Функция VBA Format возвращает строку с датой или числом в указанном формате.
Format(value, format)
Использование функции Format для отображения числовых значений в разных форматах:
Sub FormatExemple1()
'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
Использование функции Format для отображения даты в разных форматах:
Sub FormatExemple2()
maDate = #10/30/2020 3:35:45 PM#
'30.10.20
MsgBox Format(maDate, "dd/mm/yy")
'30 октября 2020
MsgBox Формат(maDate, "d mmmm yyyy")
'пятница
MsgBox Format(maDate, "dddd")
'30.10.2020 15:35
MsgBox Формат(maDate, "dd/mm/yyyy hh:nn")
'пятница 30 в 15h35
MsgBox Format(maDate, "dddd d в h\hnn")
End Sub
Таблица различных форматов даты, которые можно использовать с функцией Format (например, для даты 08-01-2021 09:05:07):
| Символы | Пример | Описание |
|---|---|---|
| d | 8 | День (с 1 по 31) |
| dd | 08 | День (с 01 по 31) |
| ddd | пт | День недели (сокращенно) |
| dddd | пятница | День недели |
| m | 1 | Месяц (с 1 по 12) |
| mm | 01 | Месяц (с 01 по 12) |
| mmm | сечь | Луна (сокращенно) |
| mmmm | январь | Луна |
| yy | 21 | Год (последние 2 цифры) |
| yyyy | 2021 | Год |
| h | 9 | Часы (с 0 по 23) |
| hh | 09 | Часы (с 00 по 23) |
| n | 5 | Минуты (с 0 по 59) |
| nn | 05 | Минуты (с 00 по 59) |
| s | 7 | Секунды (с 0 по 59) |
| ss | 07 | Секунды (с 00 по 59) |