Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: e500 en 28 Marzo 2009, 18:30 pm



Título: Sumar Hs ; Minutos ; Segundos . Milisegundos
Publicado por: e500 en 28 Marzo 2009, 18:30 pm
Hola, gente... Mi pregunta es como puedo sumar esto:

00:02;20.254 + 00:02;20.338

Aca se los separo:

                       Hora : Minutos ; Segundos . Milesimas de Segundo
                        00   :    02      ;     20       .           254
                        00   :    02      ;     20       .           338


Espero que se entienda, salu2
                       


Título: Re: Sumar Hs ; Minutos ; Segundos . Milisegundos
Publicado por: DarkMatrix en 29 Marzo 2009, 21:49 pm
suponiendo que horas, ni minutos, ni segundos, ni milesimas de segundo pueden alcanzar su valor maximo osea 60,60,60,1000 ya que si minutos valiera 60 ya no fueran 60 minutos si no 1 hora y minutos valdria 0, hay te hize un ejemplo a ver si te sirve:

valores maximos: 99:59;59;999  ;D

Código
  1. Option Explicit
  2.  
  3. Private Sub Form_Load()
  4. MsgBox SumarTiempo("00:02;20.254", "00:02;59.800")
  5. End Sub
  6.  
  7. Private Function SumarTiempo(Tiempo1 As String, Tiempo2 As String) As String
  8. Dim H As Integer, H2 As Integer
  9. Dim M As Integer, M2 As Integer
  10. Dim S As Integer, S2 As Integer
  11. Dim Ml As Integer, Ml2 As Integer
  12. Dim Horas As Integer, Minutos As Integer, Segundos As Integer, Milesimas As Integer
  13.  
  14. H = Mid(Tiempo1, 1, 2)
  15. M = Mid(Tiempo1, 4, 2)
  16. S = Mid(Tiempo1, 7, 2)
  17. Ml = Mid(Tiempo1, 10, 3)
  18.  
  19. H2 = Mid(Tiempo2, 1, 2)
  20. M2 = Mid(Tiempo2, 4, 2)
  21. S2 = Mid(Tiempo2, 7, 2)
  22. Ml2 = Mid(Tiempo2, 10, 3)
  23.  
  24. Horas = H + H2
  25. Minutos = M + M2
  26. Segundos = S + S2
  27. Milesimas = Ml + Ml2
  28.  
  29. If Milesimas >= 1000 Then
  30. Segundos = Segundos + 1
  31. Milesimas = Milesimas - 1000
  32. End If
  33.  
  34. If Segundos >= 60 Then
  35. Minutos = Minutos + 1
  36. Segundos = Segundos - 60
  37. End If
  38.  
  39. If Minutos >= 60 Then
  40. Horas = Horas + 1
  41. Minutos = Minutos - 60
  42. End If
  43.  
  44. SumarTiempo = Format(Horas, "00") & ":" & Format(Minutos, "00") & ";" & Format(Segundos, "00") & "." & Format(Milesimas, "000")
  45.  
  46. End Function
  47.  
  48.  

espero que te sirva de algo. Saludos xD


Título: Re: Sumar Hs ; Minutos ; Segundos . Milisegundos
Publicado por: Karcrack en 29 Marzo 2009, 23:20 pm
A mi me gusta pensar que la solucion mas sencilla es la mejor :P

Código
  1.    'No acepta Ms
  2.    Dim Hora1       As Date
  3.    Dim Hora2       As Date
  4.    Dim HoraR       As Date
  5.  
  6.    Hora1 = "12:01:25"
  7.    Hora2 = "3:05:35"
  8.    HoraR = Hora1 + Hora2


Título: Re: Sumar Hs ; Minutos ; Segundos . Milisegundos
Publicado por: vivachapas en 30 Marzo 2009, 01:12 am
A mi me gusta pensar que la solucion mas sencilla es la mejor :P

Código
  1.    'No acepta Ms
  2.    Dim Hora1       As Date
  3.    Dim Hora2       As Date
  4.    Dim HoraR       As Date
  5.  
  6.    Hora1 = "12:01:25"
  7.    Hora2 = "3:05:35"
  8.    HoraR = Hora1 + Hora2

yo tb hago asi.. pero no pones milisegundos ahi.. y no se si se podra usar :S


Título: Re: Sumar Hs ; Minutos ; Segundos . Milisegundos
Publicado por: e500 en 30 Marzo 2009, 01:31 am
Muchisimas gracias!!!  [ DarkMatrix  ] y a todos, voy a probar el CODE y les comento, total mente agradecido...  :rolleyes:

Salu2
   ;D