Suma de horas en ACCESS

Al sumar horas en access, si la suma supera las 24 horas, empieza otra vez de 0:
Ej: 8:00 + 8:00 + 8:00 + 8:50 el resultado es 0:50. Parece ser que toma como unidad el día... Sabéis como hacer para que me suma todas las horas,..

1 Respuesta

Respuesta
1
Sólo una cosa: ¿Se trata de una consulta? ¿Un total de un informe? ¿Haces la operación por código?
Indicame concretamente como lo haces, o más o menos como es tu aplicación y estaré encantado de indicarte como hacerlo.
El resultado lo obtengo en un campo calculado de un informe... voy sumando todas las horas..
Al final lo he solucionado " a las bravas",. A través de funciones.. Te lo remito.. Aunque si tienes una manera mejor de hacerlo cuéntamelo..
=SiInm([TOTAL_CORTESIA]="00:00";"24:00";SiInm([SumaDedif]>1;(Izq([TOTAL_CORTESIA];2))+24 & ":" & (Der([TOTAL_CORTESIA];2));[TOTAL_CORTESIA]))
TOTAL_CORTESIA=la suma de horas en formato horas
SumaDedif=suma de horas en valor numérico
Lo primero de todo, me alegro de que al final hayas conseguido solucionar tu problema, que al fin y al cabo era lo importante.
La solución que has tomado no me parece, para nada, una mala idea, ya que en casos como en el tuyo no queda más remedio que solucionarlo como tu dices: "a las bravas".
Yo estaba esperando tu confirmación al mensaje anterior (sobre que era un formulario o informe) para indicarte como hacerlo más menos de la misma forma que lo has hecho tu: Yo, en casos como el tuyo, lo que hago es extraer los dígitos correspondientes a las horas y lo correspondientes a minutos tratándolos como números enteros normales para operar (sumar en tu caso) y una vez sumados lo formateo otra vez al tipo 00:00.
Pensaba plantearte algo como esto:
Horas = Int(Mid$(DatoHora, 1, InStr(1, DatoHora, ":") - 1))
Minutos = Int(Mid$(DatoHora, InStr(1, DatoHora, ":") + 1, 2))
Y una vez que tenemos las horas (de cada unon de los registros) en un campo numérico y los minutos en otro, es cuestión de sumar y formatear el resultado de forma "00:00".
Como ves, es similar a lo que tu has hecho; es decir, "a las bravas"... Lo único que, con la forma que te planteaba, deberías tener en cuenta es en que lugar/evento/consulta (dependiendo de cómo esté desarrollada la aplicación y el informe) deberías hacer este proceso. Yo normalmente en casos como el tuyo el origen de datos del informe es una consulta, en la que creo un campo HORA y otro MINUTOS extrayendo de cada registro estos campos para poder operar luego con ellos.
Bueno, lo dicho -> Enhorabuena!. De todos modos, si tienes algún problema o consulta sobre lo que te indico no dudes en contactarme.
Muchas gracias!,.. es la primera vez que "utilizo estos medios", para solucionar mis problemas, y el reslutado ha sido "excelente"..
Bueno, te digo lo mismo si alguna vez te puedo ayudar en algo no dudes en escribirme
ciao!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas