Contenido
- 1 Asignar la fecha y hora actuales a una variable
- 2 Imprimir la fecha y hora actuales en una hoja de Excel
- 3 Comparar marcas de tiempo o calcular la duración entre eventos
- 4 Nota
- 5 Conoce nuestra tienda
- 6 Mejora tu nivel y logra tus objetivo
- 7 Ayúdanos a hacer crecer el proyecto
- 8 ¡Únete a nuestro Grupo de Facebook!
La función Now en VBA (Visual Basic for Applications) devuelve la fecha y hora actual del sistema como un valor de tipo Date. Esta función se puede utilizar para almacenar la fecha y hora actual en una variable, imprimir la fecha y hora actual en una hoja de cálculo de Excel, o comparar marcas de tiempo en tus macros.
Asignar la fecha y hora actuales a una variable
Puedes asignar el valor de Now a una variable de tipo Date para usarla más adelante en tu código.
Sub EjemploNow()
' Asigna la fecha y hora actuales a una variable
Dim fechaHoraActual As Date
fechaHoraActual = Now
' Muestra la fecha y hora actuales en un cuadro de mensaje
MsgBox "La fecha y hora actual son: " & fechaHoraActual
End Sub
Imprimir la fecha y hora actuales en una hoja de Excel
Si estás automatizando una hoja de cálculo de Excel y quieres insertar la fecha y la hora actuales en una celda específica, puedes hacerlo de la siguiente manera:
Sub InsertarFechaHoraActual()
' Inserta la fecha y hora actuales en la celda A1 de la hoja activa
Sheet1.Range("A1").Value = Now
' O usa 'ActiveSheet' si quieres hacer referencia a la hoja que está actualmente activa
' ActiveSheet.Range("A1").Value = Now
End Sub
Comparar marcas de tiempo o calcular la duración entre eventos
Puedes almacenar la marca de tiempo de un evento usando Now y luego compararla con otra marca de tiempo para calcular, por ejemplo, cuánto tiempo tarda en ejecutarse una parte de tu código.
Sub CalcularDuracion()
' Captura la hora de inicio
Dim inicio As Date
inicio = Now
' Simula un proceso que lleva tiempo, como una pausa de 5 segundos
Application.Wait (Now + TimeValue("00:00:05"))
' Captura la hora de fin
Dim fin As Date
fin = Now
' Calcula la diferencia entre las dos marcas de tiempo
Dim duracion As Double
duracion = fin inicio
' Muestra la duración en un cuadro de mensaje
MsgBox "La duración fue de: " & duracion * 24 * 60 * 60 & " segundos"
End Sub
Nota
la función Now siempre devuelve la fecha y hora del sistema en el momento en que se invoca, por lo tanto siempre obtendrás la fecha y hora actuales. Utiliza esta función cuando necesites registrar o utilizar marcas de tiempo precisas en tus macros de VBA.