Содержание:
Операторы Excel VBA
При написании кода VBA в Excel на каждом этапе используется набор встроенных операторов. Эти операторы делятся на математические, строковые, операторы сравнения и логические операторы. Далее мы подробно рассмотрим каждую группу операторов.
Математические операторы
Основные математические операторы VBA перечислены в таблице ниже.
В правом столбце таблицы показан приоритет операторов по умолчанию при отсутствии круглых скобок. Добавляя круглые скобки к выражению, вы можете изменить порядок выполнения операторов VBA по своему усмотрению.
оператор | Действие | приоритет (1 – самый высокий; 5 – самый низкий) |
---|---|---|
^ | оператор возведения в степень | 1 |
* | оператор умножения | 2 |
/ | оператор деления | 2 |
Деление без остатка – возвращает результат деления двух чисел без остатка. Например, 74 вернет результат 1 | 3 | |
Смелость | Оператор по модулю (остатка) – возвращает остаток после деления двух чисел. Например, 8 против 3 вернет результат 2. | 4 |
+ | Оператор сложения | 5 |
- | оператор вычитания | 5 |
Строковые операторы
Основным строковым оператором в Excel VBA является оператор конкатенации. & (объединить):
оператор | Действие |
---|---|
& | оператор конкатенации. Например, выражение «А» и «Б» вернет результат AB. |
Операторы сравнения
Операторы сравнения используются для сравнения двух чисел или строк и возврата логического значения типа Логический (Правда или ложь). Основные операторы сравнения Excel VBA перечислены в этой таблице:
оператор | Действие |
---|---|
= | В равной степени |
<> | Не равный |
< | Меньше |
> | Больше |
<= | Меньше или равно |
>= | Больше или равно |
Логические операторы
Логические операторы, такие как операторы сравнения, возвращают логическое значение типа Логический (Правда или ложь). Основные логические операторы Excel VBA перечислены в таблице ниже:
оператор | Действие |
---|---|
И, | операция конъюнкции, логический оператор И. Например, выражение А и Б вернется Правда, Если A и B оба равны Правда, в противном случае вернуть Ложь. |
Or | Операция дизъюнкции, логический оператор OR. Например, выражение А или Б вернется Правда, Если A or B равны Правда, и вернется Ложь, Если A и B оба равны Ложь. |
Не | Операция отрицания, логический оператор НЕ. Например, выражение Не А вернется Правда, Если A одинаково Ложь, или вернуться Ложь, Если A одинаково Правда. |
В приведенной выше таблице перечислены не все логические операторы, доступные в VBA. Полный список логических операторов можно найти в Центре разработчиков Visual Basic.
Встроенные функции
В VBA имеется множество встроенных функций, которые можно использовать при написании кода. Ниже перечислены некоторые из наиболее часто используемых:
Функция | Действие | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Abs | Возвращает абсолютное значение заданного числа. Пример:
| ||||||||||||||||||||||
Chr | Возвращает символ ANSI, соответствующий числовому значению параметра. Пример:
| ||||||||||||||||||||||
Время | Возвращает текущую системную дату. | ||||||||||||||||||||||
ДатаДобавить | Добавляет указанный интервал времени к заданной дате. Синтаксис функции:
Где аргумент интервал определяет тип временного интервала, добавляемого к заданному даты в размере, указанном в аргументе номер. Аргумент интервал может принимать одно из следующих значений:
Пример:
| ||||||||||||||||||||||
ДатаРазница | Вычисляет количество указанных интервалов времени между двумя заданными датами. Пример:
| ||||||||||||||||||||||
день | Возвращает целое число, соответствующее дню месяца в заданной дате. Пример: День(«29») возвращает число 29. | ||||||||||||||||||||||
час | Возвращает целое число, соответствующее количеству часов в данный момент времени. Пример: Час(«22:45:00») возвращает число 22. | ||||||||||||||||||||||
ИнСтр | В качестве аргументов он принимает целое число и две строки. Возвращает позицию вхождения второй строки в первую, начиная поиск с позиции, заданной целым числом. Пример:
Примечание: Аргумент-число можно не указывать, в этом случае поиск начинается с первого символа строки, указанной во втором аргументе функции. | ||||||||||||||||||||||
Int | Возвращает целую часть заданного числа. Пример: Инт(5.79) возвращает результат 5. | ||||||||||||||||||||||
Исдате | Returns Правдаесли данное значение является датой или Ложь – если дата отсутствует. Пример:
| ||||||||||||||||||||||
Исеррор | Returns Правдаесли данное значение является ошибкой, или Ложь – если это не ошибка. | ||||||||||||||||||||||
Пропал, отсутствует | Имя необязательного аргумента процедуры передается в качестве аргумента функции. Пропал, отсутствует Возвращает Правдаесли для рассматриваемого аргумента процедуры не было передано никакого значения. | ||||||||||||||||||||||
числовой | Returns Правдаесли данное значение можно рассматривать как число, в противном случае возвращается Ложь. | ||||||||||||||||||||||
левый | Возвращает указанное количество символов с начала заданной строки. Синтаксис функции такой:
в котором линия - исходная строка, а — количество возвращаемых символов, считая от начала строки. Пример:
| ||||||||||||||||||||||
Лена | Возвращает количество символов в строке. Пример: Лен («abcdej») возвращает число 7. | ||||||||||||||||||||||
Месяц | Возвращает целое число, соответствующее месяцу заданной даты. Пример: Месяц(«29») возвращает значение 1. | ||||||||||||||||||||||
середине | Возвращает указанное количество символов из середины заданной строки. Синтаксис функции: Середина(линия, Начало, ) в котором линия исходная строка Начало – позиция начала извлекаемой строки, — количество символов, которые необходимо извлечь. Пример:
| ||||||||||||||||||||||
Минута | Возвращает целое число, соответствующее количеству минут в заданном времени. Пример: Минута(«22:45:15») возвращает значение 45. | ||||||||||||||||||||||
Теперь | Возвращает текущую системную дату и время. | ||||||||||||||||||||||
Правильно | Возвращает указанное количество символов с конца заданной строки. Синтаксис функции: Верно(линия, ) где линия - исходная строка, а — количество символов для извлечения, считая от конца данной строки. Пример:
| ||||||||||||||||||||||
Во-вторых | Возвращает целое число, соответствующее количеству секунд в заданном времени. Пример: Второй(«22:45:15») возвращает значение 15. | ||||||||||||||||||||||
площадь | Возвращает квадратный корень числового значения, переданного в аргументе. Пример:
| ||||||||||||||||||||||
Время | Возвращает текущее системное время. | ||||||||||||||||||||||
Убунд | Возвращает верхний индекс указанного измерения массива. Примечание: Для многомерных массивов необязательным аргументом может быть индекс возвращаемого измерения. Если не указано, значение по умолчанию — 1. | ||||||||||||||||||||||
год | Возвращает целое число, соответствующее году указанной даты. Пример: Год(«29») возвращает значение 2015. |
Этот список включает лишь некоторые наиболее часто используемые встроенные функции Excel Visual Basic. Исчерпывающий список функций VBA, доступных для использования в макросах Excel, можно найти в Центре разработчиков Visual Basic.