CheckBox
Tengo el evento click en el checkbox,si cambio el estado del checkbox por código me va a esa función,¿cómo podría saber que va sólo cuando pincho con el ratón?
¿Cómo si tiene el foco? Yo pongo esto:
If chkAnulado.SetFocus Then
Pero me da un error que me dice Error de compilación
Se esperaba una funcion o una variable.
También probe a igualarlo a true,a si es nulo,pero siempre me da el mismo error
If chkAnulado.SetFocus Then
Pero me da un error que me dice Error de compilación
Se esperaba una funcion o una variable.
También probe a igualarlo a true,a si es nulo,pero siempre me da el mismo error
Hola,
Puedes probar con :
If Check1.Value = vbChecked Then "LLamada a la fn"
Hasta luego!
Puedes probar con :
If Check1.Value = vbChecked Then "LLamada a la fn"
Hasta luego!
La cuestión es que así siempre me va a entrar cuando tenga marcada la casilla.Lo que quiero es que sólo me entre cuando le doy al checkbox,ya sea para marcarlo o desmarcarlo.Si en un principio está marcado no tiene por qué entrarme en la función.Ya hice de todo y no se cómo hacerlo.
para que sólo se te ejecute el código del Check1_Click puedes tener una variable Boolean, y cuando vayas a cambiar su .Value desde otra parte del programa cambias el valor y luego lo restauras. Bueno, sería así:
'esta variable a nivel de módulo, en un formulario o un módulo.
Public BloquearCheck As Boolean
'en el código del CheckBox primero evaluas la boleana
Private Sub Check1_Click()
If BloquearCheck Then Exit Sub
'... y aquí el código que sí tenga que ejecutar
End Sub
'y en cualquier parte del programa ya puedes poner
BloquearCheck = True
Check1.Value = vbChecked
BloquearCheck = False
y de esta forma sólo ejecutará el código del Check cuando hagas click en el Check manualmente.
'esta variable a nivel de módulo, en un formulario o un módulo.
Public BloquearCheck As Boolean
'en el código del CheckBox primero evaluas la boleana
Private Sub Check1_Click()
If BloquearCheck Then Exit Sub
'... y aquí el código que sí tenga que ejecutar
End Sub
'y en cualquier parte del programa ya puedes poner
BloquearCheck = True
Check1.Value = vbChecked
BloquearCheck = False
y de esta forma sólo ejecutará el código del Check cuando hagas click en el Check manualmente.
