Correlación de datos en un cuadro de texto

Tengo un formulario CONTINUO en el cual se van incluyendo los kilómetros iniciales y finales de los vehículos antes de repostar y me gustaría que los kilómetros finales de un registro pasasen a los kilómetros iniciales del siguiente registro al activarse.

Creo que es complicado y es un reto; lo he intentado y no lo consigo, pido AYUDA!.

Envío imagen

1 respuesta

Respuesta
2

La forma más simple que se me ocurre sería algo así(tendrás que adaptarla a los nombres que tu tengas):

Private Sub Form_Current()
If Me.NewRecord Then
  Me.[Kms Inicio]=DMax("[Kms Fin]","NombreTabla","Vehiculo='" & Me.Vehiculo & "'")
End If
End Sub

Eso suponiendo que vehiculo es un campo de texto en la tabla.

Bien pensado, mejor cambia el código de evento, por ejemplo a después de actualizar del combo vehículo o al entrar o al recibir enfoque de kms inicio, y cambia la condición del If a:

If IsNull(me.[kms inicio]) then

Funciona correcto hasta el 5 registro, después siempre repite el ultimo.

En los demás vehículos repite a partir del tercer registro

Vamos a ver, el código, o funciona, o no funciona, pero no tiene sentido que te funcione unos registros y luego deje de funcionar al llegar a un registro.

Te dejo un ejemplo para que veas que funciona: http://www.filebig.net/files/6TDPP77k9t 

Si,si, el código funciona correctamente, el error lo debo tener yo en algún dato de texto o Numerico. Es curioso que si empiezo el registro por 0 km cuando llego a 100 me empieza a repetir resultado. Si empiezo por 100 cuando llego a 1000 y así correlativamente. Jajaja, me está volviendo loco.

Solucionado. Tenía kilómetros como texto en vez de Numérico. Ya funciona correctamente. Gracias por todo.

Tienes que tener cuidado en definir los campos como el dato que van a contener, para no tener esos comportamientos "extraños"

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas