viernes, 26 de julio de 2019

Evaluación tipo Pruebas ICFES

En el siguiente formulario se explica como programar una evaluación tipo ICFES, accesando los datos de la hoja de calculo, 


NRO
ASIGNATURA
GRADO
PREGUNTAS
RESPUESTA1
RESPUESTA2
RESPUESTA3
RESPUESTA4
ESTADO
RESPUESTA
IMAGEN
1
Informatica
11
PREGUNA 1 DE INFORMATICA
RESPUESTA A, PREGUNTA 1
RESPUESTA B, PREGUNTA 1
RESPUESTA C, PREGUNTA 1
RESPUESTA D, PREGUNTA 1
OK
1
NO
2
Informatica
11
PREGUNA 2 DE INFORMATICA
RESPUESTA A, PREGUNTA 2
RESPUESTA B, PREGUNTA 2
RESPUESTA C, PREGUNTA 2
RESPUESTA D, PREGUNTA 2
FALSO
2
3.JPG

Copie el siguiente código:
  

Private Sub CommandButton1_Click()
  'BOTÓN BUSCAR
  Dim R As String, F As Integer
  
  F = 2
  R = "S"
  
  Do While R = "S"
    If ComboBox1.Text = Hoja1.Cells(F, 2) And Val(ComboBox2.Text) = Hoja1.Cells(F, 3) Then
      If Hoja1.Cells(F, 9) = "FALSO" Then
        Label1 = Hoja1.Cells(F, 4)
        NROP = Hoja1.Cells(F, 1)
        OptionButton1.Caption = Hoja1.Cells(F, 5)
        OptionButton2.Caption = Hoja1.Cells(F, 6)
        OptionButton3.Caption = Hoja1.Cells(F, 7)
        OptionButton4.Caption = Hoja1.Cells(F, 8)
        
        If Not Hoja1.Cells(F, 11) = "NO" Then
            With ActiveWorkbook
              Image1.Picture = LoadPicture(.Path + "\" + Hoja1.Cells(F, 11))
            End With
        End If
        Exit Sub
      End If
      
      
    End If
    F = F + 1
    If Hoja1.Cells(F, 1) = "" Then
      MsgBox "ESTE GRADO NO POSEE PREGUNTAS"
      R = "N"
    End If
  Loop
End Sub

Private Sub CommandButton2_Click()
   'BOTÓN RESPUESTA
  Dim R As String, F As Integer
  
  F = 2
  R = "S"
  
  Do While R = "S"
    If NROP = Hoja1.Cells(F, 1) Then
      If Hoja1.Cells(F, 9) = "FALSO" Then
        Select Case Hoja1.Cells(F, 10)
          Case 1 'A
            If OptionButton1.Value = True Then
              MsgBox "LA RESPUESTA ES CORRECTA", vbExclamation, "FELICITACIONES"
            Else
              MsgBox "ERROR", vbExclamation, "ERROR"
            End If
          Case 2 'B
            If OptionButton2.Value = True Then
              MsgBox "LA RESPUESTA ES CORRECTA", vbExclamation, "FELICITACIONES"
            Else
              MsgBox "ERROR", vbCritical, "ERROR"
            End If
          Case 3 'C
            If OptionButton3.Value = True Then
              MsgBox "LA RESPUESTA ES CORRECTA", vbExclamation, "FELICITACIONES"
            Else
              MsgBox "ERROR", vbExclamation, "ERROR"
            End If
          Case 4 'D
            If OptionButton4.Value = True Then
              MsgBox "LA RESPUESTA ES CORRECTA", vbExclamation, "FELICITACIONES"
            Else
              MsgBox "ERROR", vbExclamation, "ERROR"
            End If
        End Select
        Hoja1.Cells(F, 9) = "OK"
      End If
      Exit Sub
      End If
      
      
    
    F = F + 1
    If Hoja1.Cells(F, 1) = "" Then
      MsgBox "ESTE GRADO NO POSEE PREGUNTAS"
      R = "N"
    End If
  Loop
End Sub

Private Sub UserForm_Initialize()
  ComboBox1.AddItem "Informatica"
  ComboBox1.AddItem "matematicas"
  ComboBox1.AddItem "Sociales"
  ComboBox2.AddItem "9"
  ComboBox2.AddItem "10"
  ComboBox2.AddItem "11"
End Sub


No hay comentarios:

Publicar un comentario