![](https://excelatumedida.com/wp-content/uploads/2024/01/¿Como-usar-la-funcion-FormatDateTime-en-VBA-1024x576.png)
Contenido
FormatDateTime es una función en VBA (Visual Basic for Applications) que se utiliza para formatear fechas y horas según las configuraciones regionales del sistema o un formato específico proporcionado por el usuario. Esta función toma un valor de fecha/hora y, opcionalmente, una constante que define el formato de fecha/hora deseado.
Sintaxis básica
FormatDateTime(Date[, NamedFormat])
- Date: Es la expresión de fecha/hora que deseas formatear.
- NamedFormat: (opcional) Es un valor numérico o una constante de enumeración que especifica el formato de fecha/hora.
Puede ser una de las siguientes constantes de enumeración de VBA:
vbGeneralDate ' Muestra la fecha y/o la hora. Si hay una fecha y una hora, entonces ambas se muestran; si solo hay una fecha o una hora, se muestra solo eso.
vbLongDate ' Muestra la fecha con el formato de fecha larga especificado en la configuración regional.
vbShortDate ' Muestra la fecha con el formato de fecha corta especificado en la configuración regional.
vbLongTime ' Muestra el tiempo con el formato de tiempo largo especificado en la configuración regional.
vbShortTime ' Muestra la hora con el formato de hora corta especificado en la configuración regional.
Ejemplo de uso de FormatDateTime:
Sub EjemploFormatDateTime()
Dim fechaHora As Date
fechaHora = Now ' Asigna la fecha y hora actual
' Utilizar FormatDateTime para formatear la fecha/hora actual
Debug.Print FormatDateTime(fechaHora, vbGeneralDate)
Debug.Print FormatDateTime(fechaHora, vbLongDate)
Debug.Print FormatDateTime(fechaHora, vbShortDate)
Debug.Print FormatDateTime(fechaHora, vbLongTime)
Debug.Print FormatDateTime(fechaHora, vbShortTime)
End Sub
En este ejemplo, Now devuelve la fecha y hora actual, y FormatDateTime se utiliza para imprimir diferentes formatos de la fecha/hora.
Si no se proporciona el parámetro NamedFormat, la función FormatDateTime utiliza vbGeneralDate como predeterminado.
Recuerda que la presentación final de la fecha y hora formateadas por FormatDateTime dependerá de la configuración regional y de idioma del sistema donde se ejecute el código VBA.
Por último, si deseas formatos personalizados más allá de lo que permite FormatDateTime, puedes utilizar la función Format, que ofrece una mayor flexibilidad para definir formatos de fecha/hora personalizados.