VIE, 30 / OCT / 2009

Generador de exámenes

Como sucede en muchas ocasiones, hay varias formas de resolver el problema. Supongamos que tenemos la lista de preguntas en el rango [D1:D20]. En [A1] escribimos la fórmula =D1 que reproduce la primera pregunta de la lista. Si extendemos esta fórmula hasta la fila 5 obtendríamos un primer examen de cinco preguntas. Ahora necesitamos “barajar” la lista de preguntas para obtener un nuevo conjunto de cinco. Para eso escribimos la función =ALEATORIO() en [C1] (a la izquierda de la primera pregunta de la lista) y extendemos la fórmula hasta la fila 20. Esta función devuelve un número al azar que cambia cada vez que se re-calcula la planilla (porque cambiamos algún dato o porque oprimimos la tecla [F9]). Para barajar la lista: 1. Ponemos el cursor en [C1], sobre el primer número aleatorio. 2. Hacemos un clic en el botón [Orden ascendente]. Este procedimiento ordena la lista de preguntas según el contenido de la columna de números aleatorios. El resultado es, en realidad, desordenarla. Cada vez que lo hacemos, se genera en [A1:A5] un nuevo conjunto de cinco preguntas. Se puede automatizar el proceso con la siguiente macro: Sub Examenes() ActiveSheet.PageSetup.PrintArea = “A1:A5” For i = 1 To 10 Range(“C1”).Sort ([C1]) ActiveSheet.PrintOut Next End Sub En esta macro, cada “vuelta” del ciclo For… Next genera e imprime diez exámenes distintos. Hay otras soluciones pero esta es razonablemente efectiva. Truco publicado en Users 220.

Como sucede en muchas ocasiones, hay varias formas de resolver el problema.
Supongamos que tenemos la lista de preguntas en el rango [D1:D20]. En [A1] escribimos la fórmula =D1 que reproduce la primera pregunta de la lista. Si extendemos esta fórmula hasta la fila 5 obtendríamos un primer examen de cinco preguntas.
Ahora necesitamos “barajar” la lista de preguntas para obtener un nuevo conjunto de cinco. Para eso escribimos la función =ALEATORIO() en [C1] (a la izquierda de la primera pregunta de la lista) y extendemos la fórmula hasta la fila 20. Esta función devuelve un número al azar que cambia cada vez que se re-calcula la planilla (porque cambiamos algún dato o porque oprimimos la tecla [F9]). Para barajar la lista:
1. Ponemos el cursor en [C1], sobre el primer número aleatorio.
2. Hacemos un clic en el botón [Orden ascendente].
Este procedimiento ordena la lista de preguntas según el contenido de la columna de números aleatorios. El resultado es, en realidad, desordenarla. Cada vez que lo hacemos, se genera en [A1:A5] un nuevo conjunto de cinco preguntas. Se puede automatizar el proceso con la siguiente macro:

Sub Examenes()
ActiveSheet.PageSetup.PrintArea = “A1:A5”
For i = 1 To 10
Range(“C1”).Sort ([C1])
ActiveSheet.PrintOut
Next
End Sub

En esta macro, cada “vuelta” del ciclo For… Next genera e imprime diez exámenes distintos. Hay otras soluciones pero esta es razonablemente efectiva.

Truco publicado en Users 220.

Comentarios
¡Comparte esta noticia!

One Comment

  1. Visor dice:

    Saludos.Si me registro en esta interesante pagina tiene un costo?

Leave a Reply