На этом шаге мы перечислим функции преобразования форматов.
Преобразование строки в число и обратно осуществляют следующими функциями.
| Функция | Назначение |
|---|---|
| Val (строка) | Возвращает числа, содержащиеся в строке, как числовое значение соответствующего типа |
| Str (число) | Возвращает значение типа Variant (String), являющееся строковым представлением числа |
В качестве допустимого десятичного разделителя функция Str воспринимает только точку. При наличии другого десятичного разделителя (например, запятой) для преобразования чисел в строки следует использовать функцию CStr, указанную в конце этого шага.
Чтобы представить числовое значение как дату, время, денежное значение или в специальном формате, следует использовать функцию Format.
Функция Format возвращает значение типа Variant (String), содержащее выражение, отформатированное согласно инструкциям, заданным в описании формата. Синтаксис:
Format (Выражение [, Формат [, ПервыйДеньНедели
[ , ПерваяНеделяГода] ] ])
При построении пользовательского числового формата возможно использование следующих символов.
| Символ | Назначение |
|---|---|
| 0 | Резервирует позицию цифрового разряда. Отображает цифру или нуль. Если у числа, представленного аргументом, есть какая-нибудь цифра в той позиции разряда, где в строке формата находится 0, функция отображает эту цифру аргумента, если нет — в этой позиции отображается нуль |
| # | Резервирует позицию цифрового разряда. Отображает цифру или ничего не отображает. Если у числа, представленного аргументом, есть какая-нибудь цифра в той позиции разряда, где в строке формата находится #, функция отображает эту цифру аргумента, если нет — в исходной позиции не отображается ничего. Действие данного символа аналогично действию 0, за исключением того, что лидирующие нули не отображаются |
| . (точка) | Резервирует позицию десятичного разделителя. Указание точки в строке формата определяет, сколько разрядов необходимо отображать слева и справа от десятичной точки |
| % | Резервирует процентное отображение числа |
| , | Разделитель разряда сотен от тысяч |
| : | Разделитель часов, минут и секунд в категории форматов Время (Time) |
| / | Разделитель дня, месяца и года в категории форматов Дата (Date) |
| E+, E-, e+, e- | Разделитель мантиссы и порядка в экспоненциальном формате |
Кроме функций Val и Str в VBA имеются следующие функции преобразования типов выражений из данного в указанный.
| Функция | Тип, в который преобразуется выражение |
|---|---|
| CBool (Выражение) | Boolean |
| CByte (Выражение) | Byte |
| CCur (Выражение) | Currency |
| CDate (Выражение) | Date |
| СDbl (Выражение) | Double |
| CDec (Выражение) | Decimal |
| CInt (Выражение) | Integer |
| CLng (Выражение) | Long |
| CSng (Выражение) | Single |
| CVar (Выражение) | Variant |
| CStr (Выражение) | String |
На следующем шаге мы рассмотрим функции обработки строк.