Функция формата Excel VBA
Функция форматирования в VBA используется для форматирования заданных значений в желаемом формате, эту функцию можно использовать для форматирования дат, чисел или любых тригонометрических значений, эта функция имеет в основном два обязательных аргумента, один - это ввод, который принимается в виде строка, а второй аргумент - это тип формата, который мы хотим использовать, например, если мы используем Format (.99, «Percent»), это даст нам результат как 99%.
В VBA нам нужно использовать функцию под названием «FORMAT» для применения к форматированию ячеек. Форматирование Excel - одна из важных концепций, которую необходимо освоить. Общие методы форматирования, которые мы все используем в повседневной работе, - это «формат даты, формат времени, форматирование чисел и другие важные коды форматирования». В обычном листе Excel мы просто нажимаем опцию форматирования ячейки Excel и выполняем форматирование, применяя соответствующий код форматирования. Однако в VBA это не так просто, как наша техника работы с листами.
Синтаксис
- Выражение: это не что иное, как значение, которое мы хотим отформатировать. В формальности VAB это называется Expression.
- [Формат]: какой формат вы хотите применить к выбранному выражению ? Здесь у нас есть два вида форматирования: один - это пользовательский формат, а второй - встроенный формат.
Здесь у нас есть форматы даты, числовые и текстовые форматы VBA.
Форматы даты VBA имеют короткую дату, длинную дату, среднюю дату и общую дату.
Числовые форматы имеют значение: Валюта, Стандарт, Процент, Научный, Да или Нет, Истина или Ложь, Вкл или Выкл.
- [Первый день недели]: какой у вас первый день недели? Мы можем выбрать любой день из списка. Ниже приведен список дней и соответствующих кодов.
- [Первая неделя года]: Какая первая неделя в году? Это определяет неделю, которая должна использоваться как самая первая неделя года.
Как пользоваться?
Вы можете скачать этот шаблон формата VBA здесь - Шаблон формата VBAХорошо, давайте применим эту функцию практически, чтобы понять функциональность функции FORMAT. Предположим, у вас есть номер 8072.56489, и вы хотите применить к нему числовое форматирование. Выполните следующие действия, чтобы применить к нему числовое форматирование.
Шаг 1. Запустите макрос Excel и определите переменную как « строковый » тип данных.
Код:
Sub Worksheet_Function_Example1 () Dim K As String End Sub
Шаг 2. Присвойте значение k в качестве нашего числа, т.е. 8072.56489.
Код:
Sub Worksheet_Function_Example1 () Dim K As String K = 8072.56489 End Sub
Шаг 3: Покажите значение « k » в окне сообщения VBA.
Код:
Sub Worksheet_Function_Example1 () Dim K As String K = 8072.56489 MsgBox K End Sub
Шаг 4: Если вы запустите этот макрос, мы получим результат ниже.
В результате мы присвоили значение переменной «k». Но нам нужно применить к этому числу какое-то форматирование, чтобы оно получилось красивым.
Шаг 5: Вместо прямого присвоения значения « k » воспользуемся функцией FORMAT.
Код:
Sub Worksheet_Function_Example1 () Dim K As String K = Format (MsgBox K End Sub
Шаг 6: Теперь для Expression присвойте номер 8072.56489 .
Код:
Sub Worksheet_Function_Example1 () Dim K As String K = Format (8072.56489, MsgBox K End Sub
Шаг 7: В параметре форматирования мы можем использовать либо встроенный формат, либо наш собственный код форматирования. Теперь я буду использовать встроенный стиль форматирования как « Стандартный ».
Код:
Sub Worksheet_Function_Example1 () Dim K As String K = Format (8072.56489, «Стандартный») MsgBox K End Sub
Шаг 8: Теперь запустите этот код и посмотрите результат в окне сообщения.
Хорошо, у нас есть запятая (,), поскольку разделители тысяч и десятичная дробь округляются только до двух цифр.
Таким образом, мы можем использовать многие другие встроенные стили форматирования для применения форматирования. Ниже приведены некоторые из примененных мной кодов.
# 1 - Формат валюты
Код:
Sub Worksheet_Function_Example2 () Dim K As String K = Format (8072.56489, «Валюта») MsgBox K End Sub
Результат:
# 2 - Фиксированный формат
Код:
Sub Worksheet_Function_Example3 () Dim K As String K = Format (8072.56489, «Фиксированный») MsgBox K End Sub
Результат:
# 3 - Процентный формат
Код:
Sub Worksheet_Function_Example4 () Dim K As String K = Format (8072.56489, "Percent") MsgBox K End Sub
Результат:
# 4 - Форматы, определяемые пользователем
Хорошо, теперь мы увидим некоторые из пользовательских форматов.
Код:
Sub Worksheet_Function_Example5 () Dim K As String K = Format (8072.56489, "#. ##") MsgBox K End Sub
Результат:
Код:
Sub Worksheet_Function_Example5 () Dim K As String K = Format (8072.56489, "#, ##. ##") MsgBox K End Sub
Результат:
# 5 - ФОРМАТ даты
Мы видели несколько важных приемов форматирования. Теперь нам нужно будет использовать функцию FORMAT для форматирования даты в VBA.
Я написал код, чтобы показать результат даты через переменную.
Код:
Sub Worksheet_Function_Example6 () Dim K As String K = 13 - 3 - 2019 MsgBox K End Sub
Когда я запускаю этот код, я не получаю точную дату, скорее результат жалкий.
Чтобы получить точные даты, нам нужно назначить ему формат даты. Первое, что нам нужно сделать, это указать дату в двойных кавычках и применить формат даты.
Код:
Sub Worksheet_Function_Example6 () Dim K As String K = Format («10 - 3 - 2019», «Длинная дата») MsgBox K End Sub
Если запустить этот код сейчас, я получу правильную длинную дату.
«Длинная дата» - это встроенный формат, аналогично вы можете использовать параметры «короткая дата» и «средняя дата».
То, что нужно запомнить
- Значение, возвращаемое функцией FORMAT, является строкой.
- Мы также можем использовать наши собственные коды форматирования даты, времени и чисел, например, как мы используем при форматировании рабочего листа.
- ФОРМАТ - это функция VBA, доступная только в VBA, а не на листе.