Выражение – часть кода, при выполнении которой вычисляется некоторое значение. При вычислении могут быть получены значения различных типов. Тип результата зависит от типов операндов и операций, которые над ними выполняются. Основные операции, реализуемые в программах на VBA, делятся на группы:
- арифметические операции:
· сложение (+),
· вычитание (–),
· умножение (*),
- деление (/), дающее в качестве результата число с плавающей точкой, деление (\), возвращающее целочисленный результат – частное от деления,
· Mod – получение остатка от деления целых чисел,
· возведение в степень (^),
- логические операции:
· Not – отрицание,
· And – конъюнкция (логическое «И»),
· Or – дизъюнкция (логическое «ИЛИ»),
· Eqv – логическая эквивалентность («равенство»),
· Imp – импликация,
· Xor – исключающее «ИЛИ»,
- операции сравнения:
· равно (=),
· не равно (<>),
· меньше (<),
- больше (>),
· меньше или равно (<=),
· больше или равно (>=),
- операция конкатенации (&) – «склеивание» строк.
Если выражение содержит несколько операций (в справочном руководстве по VBA их называют операторами), то значения «подвыражений» рассчитываются в определенном порядке. Такой порядок называют порядком старшинства или приоритетом операций.
Если выражение содержит операторы разных типов, то первыми выполняются арифметические операции, следом за ними операции сравнения, а последними логические операции. Все операции сравнения имеют равный приоритет, т.е. выполняются в порядке их расположения в выражении слева направо. Арифметические и логические операции выполняются в порядке их расположения в табл. 1.
Стоящие рядом в выражении операции умножения и деления выполняются слева направо. В таком же порядке выполняются стоящие рядом операторы сложения и вычитания. Операции внутри круглых скобок всегда выполняются раньше, чем операции вне скобок.
Операция конкатенации (&) по порядку старшинства следует сразу за арифметическими операциями и перед операциями сравнения.
Операция Like, равная по старшинству остальным операциям сравнения, выделяется в самостоятельный тип операций сравнения с образцом.
Операция Is является операцией сравнения ссылок на объект. Этот операция не выполняет сравнение объектов или их значений; она проверяет только, указывают ли две разные ссылки на один объект.