La función VBA Format devuelve una cadena con una fecha o un número en el formato especificado.
Format(valor, formato)
Usando la función Format para mostrar valores numéricos en diferentes formatos:
Sub FormatExample1()
'98.1%
MsgBox Format(0.9814, "0.0%")
'54'321.90
MsgBox Format(54321.9, "##'##0.00")
'54 321.90 €
MsgBox Format(54321.9, "# ##0.00 €")
End Sub
Usando la función Format para mostrar una fecha en diferentes formatos:
Sub FormatExample2()
myDate = #10/30/2020 3:35:45 PM#
'30.10.20
MsgBox Format(myDate, "dd/mm/yy")
'30 Octubre 2020
MsgBox Format(myDate, "d mmmm yyyy")
'Viernes
MsgBox Format(myDate, "dddd")
'30.10.2020 15:35
MsgBox Format(myDate, "dd/mm/yyyy hh:nn")
'Viernes 30 a las 15h35
MsgBox Format(myDate, "dddd d a las h\hnn")
End Sub
Una tabla de diferentes formatos de fecha que se pueden usar con la función Format (por ejemplo, para la fecha 01-08-2021 09:05:07):
| simbolos | Ejemplo | Descripción |
|---|---|---|
| d | 8 | Día (del 1 al 31) |
| dd | 08 | Día (del 01 al 31) |
| ddd | Vi | Día de la semana (abreviado) |
| dddd | Viernes | Día laborable |
| m | 1 | Luna (del 1 al 12) |
| mm | 01 | Mes (del 01 al 12) |
| mmm | Enero | Mes (abreviado) |
| mmm | Enero | Mes |
| yy | 21 | Año (últimos 2 dígitos) |
| yyyy | 2021 | Año |
| h | 9 | Horas (de 0 a 23) |
| hh | 09 | Horario (de 00 a 23) |
| n | 5 | Minutos (de 0 a 59) |
| nn | 05 | Minutos (de 00 a 59) |
| s | 7 | Segundos (de 0 a 59) |
| ss | 07 | Segundos (de 00 a 59) |