Имя формата | Описание вывода | Пример (соответствует установке языка Русский в панели управления) |
Числовой | ||
General Number | Число без выделения разрядов тысяч | 2001,5599 |
Currency | Число с выделением разрядов тысяч и с двумя знаками после десятичного разделителя, а также с символом денежной единицы | 2 001,56р. |
Fixed | Как минимум один знак слева и два знака справа от десятичного разделителя (без выделения разрядов тысяч) | 3390,10 |
Standard | Число с выделением разрядов тысяч и как 1 минимум одним знаком слева и двумя знаками справа от десятичного разделителя | 323,45 |
Percent | Число, умноженное на 100, с двумя знаками справа от десятичного разделителя и знаком процентов (%) справа | 12,54% |
Scientific | Число в стандартном виде для научных расчетов | 1,23Е+02 |
Логический | ||
Yes/No | Нет, если значение равно 0, иначе Да | Да |
True/False | Ложь, если значение равно 0, иначе Истина | Истина |
On/Off | Выкл, если значение равно 0, иначе Вкл | Вкл |
Дата/время | ||
General Date | Дата и/или время, в зависимости от значения, представленного в соответствии с установками в панели управления | 15.03.9817:27:45 |
Long Date | Дата в виде, заданном в панели управления для полного формата даты | 15 Март 2001 г. |
Medium Date | Дата в виде, заданном в панели для среднего формата даты | управления 15-мар-01 |
Short Date | Дата в виде, заданном в панели управления для краткого формата даты | 15.03.01 |
Long Time | Время (часы, минуты и секунды) в виде, заданном в панели управления для полного формата времени | 17:27:45 |
Medium Time | Время (часы и минуты) в 12-часовом формате с метками до/после полудня, заданными в панели управления | 05:27 |
Short Time | Время (часы и минуты) в 24-часовом формате | 17:27 |
Можно создать свои собственные форматы, собрав их из символов, имеющих специальные значения для аргумента формат. Например, чтобы отобразить строки текста символами верхнего или нижнего регистров, используйте функцию Format с аргументами ">" или "<" соответственно. За неимением места я не могу описывать все эти специальные символы- вы найдете их самостоятельно, открыв сначала раздел Format Function (функция Format ) в файле справки VBA, а затем щелкнув на ссылке See Also (см. также) и просмотрев разделы User-defined Formats (пользовательские форматы). Но чтобы не совсем вас разочаровывать, я привожу следующий пример с парой пользовательских форматов в действии. Кроме того, этот же пример иллюстрирует использование еще одной встроенной функции VBA - Iif:
MsgBox "Сейчас " & Format(Now, "h:nn") & _
". Это время " & Iif(Format(Now, "a/p") = "a", _
"до обеда.", "после обеда.")
Если вы выполните этот программный код до обеда, оператор отобразит на экране строку типа "Сейчас 9:07. Это время до обеда". После обеда вы получите нечто похожее на сообщение, показанное на рис. 11.1. (Кстати, функция MsgBox обсуждается ниже в этой же главе в разделе "Отображение окон сообщений".)
Рис. 11.1. Окно сообщения
Теперь объяснения. В первой функции Format аргументом формат является "h:nn".
Символ h соответствует стандарту отображения часа одной цифрой, когда имеется в виду время до 10:00. После двоеточия пп задает отображение минут с незначащим нулем, если прошло меньше 10 минут после начала часа.