Programación General > Visual Basic 6.0 e inferiores

 Sumar Dos Variables De Tipo Date

<< < (2/3) > >>

none123:
Buenas...

Hay una forma muy practica, facil, y rapida:
------------------------------------------------------------------------------------
var =  Time() + #12:10:00 AM#  (suma 10 minutos)

var =  Time() + #12:00:10 AM#  (suma 10 segundos)

var =  Time() + #12:10:08 AM#  (suma 10 minutos con 8 segundos)
------------------------------------------------------------------------------------
Eso es todo es bastante sencillo y funciona a la perfeccion; gral mente la solucion mas logica y sencilla es la correcta de entre varias.
Por si las dudas si a alguien le queda duda del funcionamiento lo q hace esto es lo siguiente: time() --> toma la hora actual (del sistema)
               #12:00:00# --> esto va entre numeral para indicar de q es hora y para visual 12:00:00 es como para nosotros el cero osea representa el conjunto vacio si sumo solamente 12:00:00 a la hora actual no va a variar en nada; por eso cambiando los 00:00 de minutos y segundos ya empieza a sumar... thats all!!

Bueno espero q les sirva...

eliza_marti:
Tienes mucha razón none123!..  :huh: lo probé y resulto muy bien.. ;) ...es más práctico que eso de estar multiplicando..
Gracias none123.. :hola: ..nos vemos!...  :sorcerer:

elmango80:
Hola solcito!

Esto te puede servir perfectamente,,, es un poco largo pero funciona.


--- Código: Text ---  Function SumarHoras(ByVal Hora1 As String, ByVal Hora2 As String) As String     Dim H_Hora1      As String    Dim H_Hora2      As String    Dim M_Hora1      As String    Dim M_Hora2      As String    Dim ST_Horas     As Long    Dim ST_Minutos   As Long    Dim Horas        As Long    Dim Minutos      As Long    Dim MinTemp      As Long    Dim THoras       As String    Dim TMinutos     As String    Dim PosComa      As Integer    Dim temp         As Double    Dim SepDecimal   As String * 1     '//Suma Horas    H_Hora1 = Left&#036;(Hora1, (InStr(1, (Hora1), &#34;h&#34;)) - 1)    H_Hora2 = Left&#036;(Hora2, (InStr(1, (Hora2), &#34;h&#34;)) - 1)    ST_Horas = Val(H_Hora1) + Val(H_Hora2)     '//Suma Minutos    PosComa = Val(InStr(1, (Hora1), &#34;,&#34;)) + 1     M_Hora1 = Val(Mid&#036;(Hora1, PosComa, Len(Hora1) - PosComa))     PosComa = Val(InStr(1, (Hora2), &#34;,&#34;)) + 1     M_Hora2 = Val(Mid&#036;(Hora2, PosComa, Len(Hora2) - PosComa))     ST_Minutos = Val(M_Hora1) + Val(M_Hora2)     MinTemp = (ST_Horas * 60) + ST_Minutos     temp = (1 / 2)     If InStr(1, temp, &#34;,&#34;) &#60;&#62; 0 Then        SepDecimal = &#34;,&#34;    End If    If InStr(1, temp, &#34;.&#34;) &#60;&#62; 0 Then        SepDecimal = &#34;.&#34;    End If     'Hora exacta (Si MinTemp es nº entero)    If InStr(1, (MinTemp / 60), SepDecimal) = 0 Then        Horas = (MinTemp / 60)        Minutos = 0     'Solo minutos (Si MinTemp &#60; 60)    ElseIf MinTemp &#60; 60 Then       Horas = 0       Minutos = MinTemp    Else     'Hora con minutos        Horas = Int(MinTemp / 60)        Minutos = MinTemp - (Horas * 60)    End If      THoras = Horas    If Len(THoras) = 1 Then        THoras = &#34;0&#34; & Horas    Else        THoras = Horas    End If     TMinutos = Minutos    If Len(TMinutos) = 1 Then        TMinutos = &#34;0&#34; & Minutos    Else        TMinutos = Minutos    End If     SumarHoras = THoras & &#34;h, &#34; & TMinutos & &#34;m&#34; End Function  

eliza_marti:
Solcito!.. :hola: ..porcia..el mio tambien funciona!.. ..:whistling: ..chauuuuuu... :sorcerer:

solcito:
Hola Gente agradezco mucho su ayuda,

la solucion perfecta era, como dijo Roll,

DateAdd("n", 10, <HoraActual>)  como ejemplo.

funciona de maravillas y en una sola linea  :D


Saludos :hola:

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

[*] Página Anterior

Ir a la versión completa