Como sumar más de 24 horas en access

Tengo una columna de de horas, en access, quiero sumarlas, pero son más de 24 horas, como le hago

Respuesta
1

¿Cómo tiene definido el campo de la hora, si como formato fecha, hh:mm o formato decimal, es decir, 2.35 indica 2 horas y 35 minutos? De todas maneras sin son más de 24 horas estamos hablando de 1 días por horas y minutos, Por ejemplo, 27 horas 35 minutos, son 1 día 3 horas y 35 minutos.

Sin tanta teoría vamos al grano:

TABLA HORAS

NOTA: En este ejemplo se asume que los tiempos se han registrado todos en este formato, es decir, no se puede anotar un tiempo 11:10:00 p. m. porque falla el cálculo, por esto utilizo el formato decimal, es decir, 11.10 SIN formato de fecha hora. Si quiere un ejemplo con este formato lo puede solicitar.

FORMULARIO EN DISEÑO

Observe que utilizo la función Horasyminutos(), tiene como fin convertir el tiempo decimal a horas y minutos. También incluí la función sumhora() para hacer el cálculo sobre la tabla, es decir, si necesita obtener este resultado desde cualquier parte.

Formulario con el resultado

FUNCIONES PARA EL CÁLCULO

Función Horasyminutos()

Función sumhora()

Si quiere el ejemplo lo puede solicitar a [email protected] favor en el asunto hacer referencia a la pregunta y solicitar este ejemplo y otro en formato decimal (11.10)

Neckkito tiene este ejemplo, pero no me funcionó sobre el total de la columna, no obstante acá se lo dejo:

Resultado

1 respuesta más de otro experto

Respuesta
1

Antes de nada permíteme que te explique que ningún ordenador del mundo trabaja con horas tal como las ves. Trabajan con números, que son decimales de día. Por eso cuando sumas horas, en formato hora, cuando pasan de 24, te pone un valor, que es, la suma, más el número de días que superen las 24 horas. Por ejemplo,

Lo que ves a su derecha es su verdadero valor, o sea 07:29 en realidad es 0,311... de día

En suma te pondría la suma de horas, pero como supera las 24, en realidad sería 24 + 11.57, o como tu lo verías 35:57. En su valor decimal es 1 día mas 0,4979... de día.

El proceso que sigue el motor de base de datos es el de la derecha. Multiplica la suma en decimal por 24 y la parte entera son las horas, luego se queda con la parte decimal, en este caso 0,95 y lo multiplica por 60 y su parte entera son los minutos.

Después de este rollo, si dices como quieres ver el resultado, si en un único cuadro de texto, si hacerlo por código, etc., se podría concretar más.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas