Repetir entrada con condición.

31/03/2011 - 05:04 por Alex | Informe spam
¿Cómo puedo hacer lo siguiente?

Tengo un formulario donde, entre otras cosas, ingreso un número de
vehículo en un cuadro de texto (ctMovil) y luego, en un cuadro
combinado (ccAcuda) escojo un chofer. Como el movil puede cambiar de
chofer varias veces en el día a ambos datos le doy ingreso directo en
el fomulario sin asociación alguna entre ambos. Eso está bien. Lo que
quiero evitarle al usuario es tener que escribir el nombre del chófer
cada vez que éste hace una salida por lo que intento (sin éxito)
lograr que, cuando dicho usuario digite en ctMovil el número del
vehículo, en ccAcuda, automaticamente aparezca el último chofer
asignado a ese vehículo. Si el vehículo cambiara de chofer, el usuario
ingresaría el nuevo funcionario mediante ccAcuda y éste debería
repetirse (para éste vehículo) en los siguientes registros hasta que
haya un nuevo cambio de chofer.

Aquí muestro el ejemplo:

ctMovil | ccAcuda

65 Chofer A (Primer ingreso de A. Manual mediante ccAcuda)

66 Chofer B (Primer ingreso de B. Manual mediante ccAcuda)

65 Chofer A (Segundo ingreso A. Sigue el mismo chofer p/65.
Entrada automática. Toma el chofer anterior de 65)

65 Chofer C (Primer ingreso de C. Manual mediante ccAcuda)

66 Chofer B (Segundo ingreso de B. Sigue el mismo chofer p/
66. Entrada automática. Toma el chofer anterior de 66)

65 Chofer C (Segundo ingreso de C. Sigue el mismo chofer p/
65. Entrada automática. Toma el chofer anterior de 65)


¿Se entiende? Supongo que debería escribir un procedimiento en el
evento After_Update() del control ctMovil pero no me sale.
A todos gracias.

Preguntas similare

Leer las respuestas

#6 Alex
03/04/2011 - 17:16 | Informe spam
On 2 abr, 09:31, jorge hector vega wrote:
En el evento después de actualizar agregas el siguiente código
Private Sub ctMovil_AfterUpdate()
Dim r As DAO.Recordset
Set r = Me.Recordset.Clone()

r.FindLast "ctMovil=" & Me.ctMovil.Value
If r.NoMatch = False Then 'si hubo coincidencia

    Me.ccAcuda.Value = r.Fields("ccAcuda").Value
End If
End Sub



Intenté con DLookup sin mucho éxito pero reconozco que es por mi
propia ignorancia.
La solución de Jorge sí funcionó, además de que me permite evitar la
tabla móviles.

A todos muchas gracias.
Respuesta Responder a este mensaje
#7 José Mª Fueyo
04/04/2011 - 12:30 | Informe spam
Me alegro que encontraras una solución.

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