Access - Condiciones en campos

   
Vista:

Condiciones en campos

Publicado por tato22 (7 intervenciones) el 13/09/2010 21:37:12
Tengo un formulario con un campo donde el valor puede ser "SI" o "No". Lo que necesito es que cuando dicho campo tenga el valor "No", al entrar al formulario, necesito que los campos "fechaenvio" y "fecharecepcion" aparezca el automáticamente "No activo" y que dichos campos queden bloqueados.
He conseguido que se queden bloqueados, pero no que rellene automáticamente el texto "no activo" dentro del campo. ¿Qué código puedo emplear?

Muchas gracias y un saludo a todos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Condiciones en campos

Publicado por elias (405 intervenciones) el 14/09/2010 08:54:22
Mas o menos seria asi, (no lo he probado)

Private form_Current ()

If ( me.campo = False ) then

me.fechaenvio.setfocus
me.fehcaenvio.text = "No Activo"

me.fecharecepcion.setfocus
me.recepcion.text = "No Activo"

me.fechaenvio.enabled = False
me.fecharecepcion.enabled = False

else

< LO CONTRARIO>

End If


Tato , en vez de hacer:

me.fechaenvio.setfocus
me.fehcaenvio.text = "No Activo"

prueba a ver si te funciona esto, que te ahorrarias una instruccion:

me.fechaenviovalue = "No Activo"

y asi tambien para fecharecepcion



Espero te sirva
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Condiciones en campos

Publicado por tato (7 intervenciones) el 14/09/2010 16:12:00
Muchas gracias elias, pero me sigue sin funcionar. Este es el código que he empleado,

Private Sub Form_Open(Cancel As Integer)
If (Me.envioReparar = "Si") Then

Me.fechaenvio.Enabled = True
Me.fecharecepcion.Enabled = True
End If

If (Me.envioReparar = "False") Then

Me.fechaenvio.SetFocus
Me.fechaenvio.Text = "No Activo"

Me.fecharecepcion.SetFocus
Me.fecharecepcion.Text = "No Activo"

Me.fechaenvio.Enabled = False
Me.fecharecepcion.Enabled = False
End If
End Sub

Con éste código, me analiza el campo "envioReparar", y si dicho campo es igual a "Si", los campos de "fechaenvio" y "fecharecepción" se quedan en blanco y activados. Si el campo "envioReparar" es igual a "No", lo único que hace es desactivar el campo "fechaenvio", pero el campo "fecharecepcion" lo deja activo, y no añade el texto "No activo". Necesitaría que si el campo "envioReparar" es igual a "No", añada en los campos "fechaenvio" y "fecharecepcion" el texto "No activo" y que luego se quede desactivados.

Muchas gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Condiciones en campos

Publicado por elias (405 intervenciones) el 15/09/2010 08:35:49
Buenas,

1º) ¿has probado con el evento Form_Current( ) ?

2º)

Asi el codigo estaria mejor:

Private Sub Form_Open(Cancel As Integer)

If (Me.envioReparar = True) Then

Me.fechaenvio.Enabled = True
Me.fecharecepcion.Enabled = True

else

Me.fechaenvio.SetFocus
Me.fechaenvio.Text = "No Activo"

Me.fecharecepcion.SetFocus
Me.fecharecepcion.Text = "No Activo"

Me.fechaenvio.Enabled = False
Me.fecharecepcion.Enabled = False

End If

End Sub

3º) Mete Msgbox o haz Debug para ver si se hacen los eventos, entra en los If's etc.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Condiciones en campos

Publicado por tato (7 intervenciones) el 17/09/2010 18:09:06
Finalmente no me ha funcionado el código, pero lo he solucionado añadiendo de otra forma. Bloqueo los campo gracia a tu código y me modifica otro registro, cosa que me vale para mi aplicación.

Muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar