Оператор присвоения
Приоритет выполнения операций в выражениях
Операции VBA
Простейшие операции
В программах на VBA можно использовать стандартный набор операций над данными. Имеются три основных типа операций:
– арифметические, выполняются над числами, и их результатом являются числа;
– отношения (сравнения), применяются не только к числам, и их результатом являются логические значения («истина» или «ложь»), например: х>у;
– логические (булевские), используются в логических выражениях и их результатом являются логические значения, например: Not x And у.
Приведем операции VBA указанных и дополнительных категорий.
Математические операции.
[Операнд1] + [Операнд2] | Сложение |
[Операнд1] - [Операнд2] | Вычитание |
- [Операнд] | Перемена знака |
[Операнд1] * [Операнд2] | Умножение |
[Операнд1] / [Операнд2] | Деление |
[0перанд1] \ [Операнд2] | Целочисленное деление |
[Операнд1] Mod [Операнд2] | Остаток от деления по модулю |
[Операнд1] ^ [Операнд2] | Возведение в степень |
Операции отношения (сравнения)
[Операнд1] < [Операнд2] | Меньше |
[Операнд1] > [Операнд2] | Больше |
[Операнд1] <= [Операнд2] | Меньше или равно |
[Операнд1] >= [Операнд2] | Больше или равно |
[Операнд1] <> [Операнд2] | Не равно |
[Операнд1] = [Операнд2] | Равно |
[Операнд1] Is [Операнд2) | Сравнение двух операндов, содержащих ссылки на объекты |
[Операнд1] Like [Операнд2] | Сравнение двух строковых выражений |
Логические операции
[Операнд1] And [Операнд2] | Логическое умножение |
[[Операнд1] Or [Операнд2] | Логическое сложение |
[Операнд1] Хог [Операнд2] | Исключающее or (или) |
[Операнд1] Not [Операнд2] | Логическое отрицание |
Другие операции
[Строка1] & [Строка2] | Сложение строк. «&» – амперсанд, в данном случае выполняет роль символа конкатенации (объединения). Для сложения строк допустимо использование операции [Cтрока1] + [Строка2], но предпочтительнее, во избежание путаницы, применять операцию со знаком & |
Приоритет выполнения операций в выражениях:
1) возведение в степень.
2) умножение и деление.
3) деление нацело.
4) взятие остатка от деления.
5) сложение и вычитание.
Действия в выражении выполняются слева направо с соблюдением старшинства. Для изменения порядка выполнения действий используются круглые скобки. Число открывающихся скобок всегда должно быть равно числу закрывающихся. Любое выражение в скобках вычисляется раньше, чем выполняется операция, предшествующая скобкам.
Все составные части выражения записываются в программу в одну строку, например: (a+b*x)/(c+d).
При записи выражений также могут использоваться различные встроенные функции языка.
Оператор присвоения присваивает значение выражения переменной, константе или свойству объекта. Оператор присвоения всегда включает знак равенства «=».
Синтаксис:
Переменная (Константа, Свойство Объекта) = Выражение
Оператор присвоения предписывает выполнить выражение, заданное в его правой части, и присвоить результат переменной, имя которой указано в левой части. В результате, например, действия следующей пары операторов
х = 2
х = х + 2
переменной х будет присвоено 4.
Для присвоения переменной ссылки на объект применяется инструкция Set. В следующем примере инструкция Set присваивает переменной область Диапазон А1:B3:
Set Область = Range(«А1:ВЗ»)
В общем случае инструкция set имеет следующий синтаксис:
Set ОбъектнаяПеременная = {[New] ОбъектноеВыражение | Nothing}
§ ключевое слово New используется при создании нового экземпляра класса;
§ ключевое слово Nothing позволяет освободить все системные ресурсы и ресурсы памяти, выделенные для объекта, на который имелась ссылка (вольно говоря, она удаляет объект из памяти).