Consulta funcion GoToControl

08/09/2010 - 23:02 por gabi | Informe spam
Hola,
Lo que quiero hacer es que si el projecto elegido es invalido, el
cursor se quede en ese campo y no avance.
Pero no me funciona. :(
Gracias

Private Sub Projecto_AfterUpdate()
Dim First As Variant
First = DLookup("[PrjName]", "dbo_OPRJ", "[PrjCode] = Forms!
Registro!Projecto")
If Not IsNull(First) Then
Forms!Registro!Text94 = First
Else
MsgBox "Projecto NO VALIDO"
DoCmd.GoToControl ("Projecto")
End If
End Sub

Preguntas similare

Leer las respuestas

#1 José Mª Fueyo
09/09/2010 - 13:13 | Informe spam
Hola
Podrías ver sí el valor devuelto por DLookup es nulo o una cadena
vacía

If Not IsNull(First) AND Fist<>"" Then ...

De todos modos, no nos comentas sí te da un error, o que es lo que
pasa. Ponle un punto de interrupción a esa sentencia y comprueba su
valor.

Salu2
José Mª Fueyo
[MS MVP Access]
Respuesta Responder a este mensaje
#2 gabi
10/09/2010 - 17:08 | Informe spam
Yo ingreso un valor que es nulo, y el programa pasa al siguiente
campo, cuando yo le digo que se quede en el mismo DoCmd.GoToControl
("Projecto")
Si pruebo que salte a cualquier otro campo, lo hace bien, no logro que
se quede en el mismo campo "Projecto" para que sea ingresado un valor
correcto.

Gracias


On Sep 9, 5:13 am, José Mª Fueyo wrote:
Hola
Podrías ver sí el valor devuelto por DLookup es nulo o una cadena
vacía

If Not IsNull(First) AND Fist<>"" Then ...

De todos modos, no nos comentas sí te da un error, o que es lo que
pasa. Ponle un punto de interrupción a esa sentencia y comprueba su
valor.

Salu2
José Mª Fueyo
[MS MVP Access]
Respuesta Responder a este mensaje
#3 José Mª Fueyo
13/09/2010 - 11:46 | Informe spam
Hola de nuevo
Utiliza el procedimiento de evento "Antes de
actualizar" (BeforeUpdate). Sí el valor no cumple los criterios,
establece la variable Cancel a true

Private Sub Projecto_BeforeUpdate()
Dim First As Variant
First = DLookup("[PrjName]", "dbo_OPRJ", "[PrjCode] = Forms!
Registro!Projecto")
If Not IsNull(First) Then
Forms!Registro!Text94 = First
Else
MsgBox "Projecto NO VALIDO"
DoCmd.GoToControl ("Projecto")
Cancel=true
End Sub

Salu2
José Mª Fueyo
[MS MVP Access]
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida