RE:operaciones con horas en visual basic
La función DateDiff devuelve el número de intervalos de tiempo entre dos fechas.
Estos intervalos pueder ser años, meses, días, horas, minutos o segundos.
Prueba con esta función
Function sTiempo(dInicio As Date, dFin As Date) As String
sTiempo = Str((DateDiff("s", dInicio, dFin) \ 86400) Mod 365) & " días, "
sTiempo = sTiempo & Str((DateDiff("s", dInicio, dFin) \ 3600) Mod 24) & " horas, "
sTiempo = sTiempo & Str((DateDiff("s", dInicio, dFin) \ 60) Mod 60) & " minutos, "
sTiempo = sTiempo & Str(DateDiff("s", dInicio, dFin) Mod 60) & " segundos."
End Function
Lo que hace es calcular la diferencia en segundos y después ajustarla a dias, horas...
p.e. Imaginemos que en un TextBox (Text1) tienes una fecha en este formato "25/07/2007 15:00:00" y en otro (Text2) lo siguiente "26/07/2007 17:25:32"
Si haces una llamada a la función así:
Variable = sTiempo(Text1, Text2)
retornará la cadena "1 días, 2 horas, 25 minutos, 32 segundos."