Visual Basic - operaciones con horas

Life is soft - evento anual de software empresarial
 
Vista:

operaciones con horas

Publicado por edgar (6 intervenciones) el 13/07/2003 22:44:26
Amigos:

Estoy haciendo una aplicacion que me sirva como reloj checador, no tengo mucha experiencia con visual basic y tengo dudas en como obtener los resultados al hacer operaciones con horas, es decir, si almaceno la hora de entrada como el valor time y la hora de salida con el valor time, depues quiero saber cuanto tiempo trabajo, lo que hago es : hsalida - hentrada, pero obtengo un numero muy extraño. Ojala me puedan orientar o me puedan decir donde me puedo documentar. Muchas gracias por su valiosa ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:operaciones con horas

Publicado por J2ML (464 intervenciones) el 14/07/2003 14:43:49
Mi pana utiliza el comando datediff y en la cadena de formato de salida empleas minutos. Algo como:
Lapso = Datediff(Hora1,Hora2,"n")
Lugo Lapso será la diferencia en minutos entre la hora1 y la hora2..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:operaciones con horas

Publicado por Gelbert Totora (8 intervenciones) el 14/07/2003 21:42:31
mira haz los sigyuiente
dim hora1 as Date
dim hora2 as Date
Dim Dif as DATE
en el evento form load
private sub Form_Load()
hora1 now
hora 2now
end sub
private sub Timer1_Time()
txt1.text=format(hora1,"hh:mm:ss")
txt2.text=format(hora2,"hh:mm:ss")
DIF=HORA1-HORA2
txt3.text=format(dif,"hh:mm:ss)
end sub

si no te funciona enviame un email a mi correo
para que te pueda emviar el codigo fuente
esta solo la hice en la nota
espero que les sirva
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Explicación del número 'raro'

Publicado por bla (230 intervenciones) el 14/07/2003 23:46:03
Haz esto en la pantalla de inmediato
a=time
?a
Devuelve 23:16:59
(Espera unos segundos)
b=time
?b
Devuelve 23:17:05
?b-a
Devuelve 6,94444444444553E-05
?(b-a)*60*60*24
Devuelve 6,00000000000094
Que es el número de segundos que esperaste
Es decir el número raro es el número de días que has esperado. Esto es así porque time internamente se guarda como un número (double) de días transcurridos desde cierta fecha
Esta fecha inicial es:
? format(cdate(0),"dd/mm/yyyy hh:mm:ss")
30/12/1899 00:00:00
Observa también que
? cdate(6.94444444444553E-05 )
Devuelve 00:00:06
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar