¿Cómo inhabilitar varios campos en función de otro?

Hola, disculpa las molestias por volver a preguntar, ahora en un formulario que solo es para capturar datos, hay un campo (ETAPAS) para números de tareas(del 1 al 10), y a continuación siguen campos de tareas (tareas1, tareas2, etc) para caturar el tipo de tarea según la etapa, ¿cómo hago para que los campos de tareas queden en Enabled = False al no coincidir con el campo etapa? Y permita capturar en el campo que si corresponde.
Solo he podido hacer que inhabilite un campo, escribiendo en el fichero de eventos en propiedades del campo ETAPA, los códigos son así:
Private Sub ETAPA_AfterUpdate()
If Me![ETAPA].Value = 1 Then
Me![TAREAS 1].Enabled = True
Else
Me![TAREAS 1].Enabled = False
End If
End Sub
Private Sub ETAPA_AfterUpdate()If Me![ETAPA].Value = 1 ThenMe![TAREAS 1].Enabled = TrueElseMe![TAREAS 1].Enabled = False
End IfEnd Sub
Gracias!

1 Respuesta

Respuesta
1
eso no te sirve pues solo lo hace si estas cambiando etapas , si etapas se archiva en la tabla y te cambias de registro, no hara esa funcion
pon en el evento current del form
for a=1 to 10
     controls("tarea " & a ).enabled=(etapa=a)
next
Hola, lo puse así:
Private Sub Form_Current()
For a = 1 To 11
     Controls("TAREAS" & a).Enabled = (ETAPA = a)
Next
End Sub
Pero me sale un error '13' en tiempo de ejecución, no coinciden los tipos
¿A qué se refiere?
¿Etapa es numérico no?
O enviame la base
Gracias, por el detalle del "nz", ya corre bien, aunque lo aplique así:
Private Sub ETAPA_AfterUpdate()
For a = 1 To 11 
     Controls("TAREAS" & a).Enabled = (nz(ETAPA) = a) 
Next 
End Sub
Gracia por el apoyo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas