Crear cuestionario aleatorio con checklist

Para Dan

Tengo la idea pero no se como hacerlo

Lo que pasa es que para hacer un cuestionario para conducir acá en Chile están solamente online ..

Y conozco gente que quiere estudiar para sacar licencia de conducir y no tienen acceso a internet..

La idea es crear una hoja con las preguntas algunas tienen imagen y también agregar las respuestas ...

Esto es lo que me gustaría que en un userform con un botón iniciar cargue una pregunta al azar y esta este acompañada de check list para poder marcar la o las respuestas correcta a la pregunta...

¿Se podrá o es mucho lo que se tiene que hacer?

1 Respuesta

Respuesta
1

H o l a:

Envíame tu idea de formulario.

En una hoja deberás tener todas las preguntas, por ejemplo en la columna A pones las preguntas, cada pregunta deberá tener las posibles respuestas, en la columna B tienes que poner las respuestas, de esa forma puedo buscar una pregunta al azar y poner sus respuestas.

Ejemplo: Si una pregunta tiene varias respuestas correctas, entonces en la columna A deberás repetir la pregunta:

S a l u d o s

Gracias Dan

Estoy preparando la hoja y el formulario.... Las preguntas son con alternativas..

Mañana lo envió..

Saludos

Le envié el correo 

Gracias 

Saludos

H o l a:

Te anexo la macro para buscar la pregunta aleatoria y ponerla en el label, las opciones de las respuestas a la pregunta las puse en un listbox:

Private Sub CommandButton1_Click()
'Por.Dante Amor
    'Buscar una pregunta aleatoria
    Set h1 = Sheets("Hoja1")
    Set h2 = Sheets("Hoja2")
    ListBox1.Clear
    '
    'Busca la pregunta aleatoria y que NO haya salido
    u = h1.Range("A" & Rows.Count).End(xlUp).Row
    num = h1.Cells(u, "A")
    Do While True
        y = Evaluate("=RANDBETWEEN(1," & num & ")")
        Set b = h2.Columns("A").Find(y, lookat:=xlWhole)
        If b Is Nothing Then
            Exit Do
        End If
    Loop
    '
    'Toma la pregunta para mostrarla en el label
    Set b = h1.Columns("A").Find(y, lookat:=xlWhole)
    If Not b Is Nothing Then
        Label1 = h1.Cells(b.Row, "A")
        Label2 = h1.Cells(b.Row, "B")
        Label3 = h1.Cells(b.Row + 1, "B")
        For i = b.Row + 2 To h1.Range("B" & Rows.Count).End(xlUp).Row
            If h1.Cells(i, "A") <> "" Then Exit For
            ListBox1.AddItem h1.Cells(i, "B")
        Next
    End If
    CommandButton1.Enabled = False
End Sub

S a l u d o s . D a n t e   A m o r. Recuerda valorar la respuesta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas