Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: byway en 12 Marzo 2010, 01:53 am



Título: sumar horas...
Publicado por: byway en 12 Marzo 2010, 01:53 am
haber si me ayudan con esto d sumar horas, tomo el tiempo del sistema y le sumo por decir 1 hora para que ejecute algo y bueno lo primero que se me ocurrio hacer fue lo siguiente:
Código
  1. Dim h, m, s As Integer
  2. Dim h2, m2, s2 As Integer
  3. Private Sub Timer1_Timer()
  4. hora.Caption = Time$
  5. End Sub
  6.  
  7. Private Sub Command1_Click()
  8.  
  9. h = Val(Left(hora.Caption, 2))
  10. m = Val(Mid(hora.Caption, 4, 2))
  11. s = Val(Right(hora.Caption, 2))
  12.  
  13. h2 = Val(Left(hora2.Text, 2))
  14. m2 = Val(Mid(hora2.Text, 4, 2))
  15. s2 = Val(Right(hora2.Text, 2))
  16.  
  17. kk = Format(h + h2 & ":" & m + m2 & ":" & s + s2)
  18.  
  19. End Sub
  20.  

esta algo chapusero ... jeje haber si me dan una idea de como hacer para que al sumarle mas horas no sobrepase de las 24 horas.


Título: Re: sumar horas...
Publicado por: Shell Root en 13 Marzo 2010, 05:24 am
Creo que es mejor usar la función DateAdd(), no os dejeis llevar por el nombre de la función. Por ejemplo:

Son las 12/03/2010 11:23:23 p.m., Le podemos sumar Horas, Minutos, Segundos. Por ejemplo: Sumemosle 2 Horas, sin afectar las 24 Horas!
Código
  1. DateAdd("h", 2, Now)
La fecha quedará así: 13/03/2010 01:23:23 a.m.
Como viste, tambien cambia el dia.

Recordad:
ExpresiónValor
yyyy
Año
m
Mes
y
Dia del Año
d
Dia
w
Dia de la Semana
ww
Semana
h
Hora
n
Minuto
s
Segundo

Saludos!