Trabajar con un campo de tipo Sí/No
Tengo que haceros una pregunta con el fin de solucionar el problema que tengo con los campos de tipo si/no.
En un formulario tengo varios campos de tipo si/no, en forma de "casilla de verificación" o "botón de opción", aunque con conseguir que funcione uno, los otros es copiar y pegar.
Por ejemplo, tengo un campo que se llama "radial" donde los trabajadores SÓLO pueden utilizarla (y por lo tanto yo poder activarla) si han hecho un curso que yo le especifico en unas variables. Si no han hecho ese curso, no pueden utilizar dicha maquinaria y por lo tanto yo no podré activar esa opción (saldrá un box).
El tema es el siguiente:
Si el campo está activado (quiere decir que tiene esa formación) que me deje desactivarlo sin más, pero si no está activado, que me busque si tiene la formación que le especifico en las variables (cursoc y cursod, por ejemplo). Si no devuelve registros no me debería activar el campo (mediante box), pero si tiene alguna de esas dos formaciones (por ejemplo) que sí me permita activar la opción.
Os pongo el código en el que he trabajado y que no me funciona. Por cierto, el código lo he puesto en Onclick.
Private Sub radial_Click()
On Error Resume Next
' Compruebo si el campo está activado y si está activado que me deje desactivarlo. Si no está activado que busque las concordancias.
If Me.radial.Value <> 0 Then
Me.radial.Value = 0
Exit Sub
Else
Dim cursoc, cursod, dni, dnic As String
' Defino los cursos en 2 variables
dnic = Me.dni
cursoc = "20 horas encofrados"
cursod = "6 horas encofrados"
' Compruebo si los trabajadores tienen la formación especificada en las variables
Set Rst = CurrentDb.OpenRecordset("SELECT * FROM formacionpersonal WHERE dni = '" & dnic & "' AND nombrecurso = '" & cursoc & "' OR nombrecurso = '" & cursod & "'")
If Rst.RecordCount = 0 Then
MsgBox "El trabajador no tiene formación para poder utilizar esta maquinaria"
Else
Me.radial.Value = 1
End If
End If
End Sub