Sacar horas trabajadas en Access vb

Necesito Ayuda tengo en un formulario que tengo 2 textbox, el 1 hora de entrada, el 2 la hora de salida y HorasTrabajadas que es para mostrar el resultado.

En vba he creado 2 variables de tipo date que son HEnt donde asigno el contenido del 1 texbox y HSal donde asigno en contenido del 2 textbox.

Por ejemplo pongo

Entro 14:44

Salio 21:10

HorasTrabajadas 7:34

Esto me tendría que dar 6:18, pero me da 7:34 y no se donde esta el error. La fórmula que utilizo es esta

HorasTrabajadas = DateDiff("H", [HEnt], [HSal] + Abs([HEnt] > [HSal])).

1 respuesta

Respuesta
2

¿Porqué no pones directamente

Horastrabajadas=hsal-hent

Porque busco que me saque las horas trabajadas de noche también. Pero así como he puesto la fórmula me calcula 7 hs cuando son 6 he.

Si tengo el formulario

Cuando pulso Enter

Por el contrario si tengo

Cuando pulso Enter

El código del evento Después de actualizar del cuadro de texto HSal es simplemente

If HSal < HEnt Then
Trabajadas = 24 + HSal - HEnt
Else
Trabajadas = HSal - HEnt
End If

Gracias pero me sigue saliendo que la diferencia es 7 hs y no 6

EN EL CUADRO DE TEXTO ME DICE "no coinciden los tipos" a que se debe ese mensaje si el formato que tiene trabajadas es Hora corta, gracias

Perdón el error "no coinciden los tipos" a que se debe ese mensaje si el formato que tiene trabajadas es Hora corta, y me sale cuando la hsal>hent, osea después del else, gracias y dispame las molestias.

Creo que lo mejor es que si quieres, repito, si quieres, mándame un mensaje(sólo el mensaje) a [email protected] y te mando un ejemplo, que se ve mejor.

Si lo haces, en el asunto del mensaje pon tu alias Miguel Calonge, ya que si no sé quien me escribe no los abro.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas