martes, 21 de octubre de 2008
Funciones para calcular fechas en Visual Basic 6.0
Visual basic cuenta con una serie de funciones que nos permiten calcular fechas y horas, por ejemplo generar un intervalo de fechas, sumar y restar fechas y horas y otras operaciones y cálculos
DateAdd : Devuelve un Variant que contiene una fecha que indica el intervalo de tiempo que se ha agregado
DateDiff : Devuelve el número de intervalos de tiempo entre dos fechas determinadas
DatePart : Devuelve una parte específica de una fecha dada
DateSerial : Devuelve un valor Date para un año, mes y día determinados
Ejemplos
El siguiente ejemplo utiliza la función DateDiff para mostrar el itervalo entre dos fechas. El intervalo lo muestra en segundos , minutos, dias, semanas meses y años, como muestra el siguiente gráfico
Colocar en el formulario un Command1.
Option Explicit
' recibe las dos fechas como parámetros
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Private Sub Calcular(Fecha_Inicial As Date, _
Fecha_Final As Date)
Const Formato As String = "#,##0"
Me.Cls
Me.Print "Calcular Intervalos entre las fechas " & Fecha_Inicial & _
" hasta :" & Fecha_Final & vbNewLine & String(150, "-") & vbNewLine
Me.Print Format(DateDiff("s", Fecha_Inicial, Fecha_Final), Formato) & " segundos"
Me.Print Format(DateDiff("n", Fecha_Inicial, Fecha_Final), Formato) & " minutos"
Me.Print Format(DateDiff("h", Fecha_Inicial, Fecha_Final), Formato) & " horas"
Me.Print Format(DateDiff("y", Fecha_Inicial, Fecha_Final), Formato) & " dias"
Me.Print Format(DateDiff("WW", Fecha_Inicial, Fecha_Final), Formato) & " semanas"
Me.Print Format(DateDiff("m", Fecha_Inicial, Fecha_Final), Formato) & " meses"
Me.Print Format(DateDiff("yyyy", Fecha_Inicial, Fecha_Final), Formato) & " años"
End Sub
Private Sub Command1_Click()
' le pasa las dos fechas a la función
Call Calcular("01/01/2000", Date)
End Sub
Private Sub Form_Load()
Me.AutoRedraw = True
Command1.Caption = "calcular intervalos "
End Sub
Ejemplo con DateAdd
Lo siguiente, muestra como añadir y restar fechas
' agrega 10 años a la fecha actual
MsgBox DateAdd("yyyy", 10, Date)
' Agrega cinco meses a la fecha actual
MsgBox DateAdd("m", 5, Date)
' resta 1 dias a la fecha actual ( usa el signo -)
MsgBox DateAdd("y", -1, Date)
Nota: para restar, usar el signo negativo, como se usa en el último ejemplo.
Para poder restar y agregar segundos a una hora, usar en el parámetro intervalo la "S", para minutos usar la "n", para horas la "h", para restar y sumar semanas la "ww".
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario