Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
50
Добавлен:
15.03.2016
Размер:
602 Кб
Скачать
☆

2.6Операции в vba

2.6.1Арифметические

Арифметические операции VBA сведены в таблицу (Таблица 4).

Таблица 4. Арифметические операции.

Операция

Описание

[Операнд1] + [Операнд2]

Сложение

[Операнд1] - [Операнд2]

Вычитание

- [Операнд]

Перемена знака

[Операнд1] * [Операнд2]

Умножение

[Операнд1] / [Операнд2]

Деление

[Операнд1] \ [Операнд2]

Целочисленное деление

[Операнд1] Mod [Операнд2]

Остаток от деления по модулю

[Операнд1] ^ [Операнд2]

Возведение в степень

Операнды должны быть числовых подтипов, результаты операций также являются числами.

2.6.2Строковые

В VBA присутствует одна встроенная строковая операция: конкатенация (сложение) строк.

Синтаксис:

[Строка1] & [Строка2] или [Строка1] + [Строка2]

Результатом операции будет строка, образованная слиянием Строки1 и Строки2.

Для сложения строк предпочтительнее, во избежание путаницы с арифметическим сложением, применять операцию со знаком &

2.6.3Операции отношения

Операции отношения или операции сравнения сведены в таблицу (Таблица 5).

Таблица 5. Операции отношения.

Операция

Описание

[Операнд1] < [Операнд2]

Меньше

[Операнд1] > [Операнд2]

Больше

[Операнд1] <= [Операнд2]

Меньше или равно

[Операнд1] >= [Операнд2]

Больше или равно

[Операнд1] <> [Операнд2]

Не равно

[Операнд1] = [Операнд2]

Равно

[Операнд1] Is [Операнд2]

Сравнение двух операндов, содержащих ссылки на объекты

[Операнд1] Like [Операнд2]

Сравнение двух строковых выражений

Оба операнда должны относиться к одному подтипу, результат операции будет булевского типа: True, если отношение выполняется и False если не выполняется.

2.6.4Логические операции.

Логические операции перечислены в таблице (Таблица 6).

Таблица 6. Логические операции.

Операция

Описание

[Операнд1] And [Операнд2]

Логическое умножение

[Операнд1] Or [Операнд2]

Логическое сложение

[Операнд1] Хог [Операнд2]

Исключающее or (или)

Not [Операнд1]

Логическое отрицание

[Операнд1] Imp [Операнд2]

Логическая импликация (в настоящее время почти не используется)

[Операнд1] Equ [Операнд2]

Логическая эквивалентность (в настоящее время почти не используется)

Операнды могут быть булевского или одного из числовых типов. Если операнды логических операций булевского типа, результат операции тоже будет булевского типа соответственно таблице истинности (Таблица 7). Операция Not одноместная и применяется только к Операнду1, остальные операции – двуместные. В других случаях выполняется побитовая логическая операция над двоичными представлениями операндов.

Таблица 7. Таблица истинности

Операнд1

Операнд2

And

Or

Xor

Not

Imp

Equ

False

False

False

False

False

True

False

True

False

True

False

True

True

True

True

False

True

False

False

True

True

False

False

False

True

True

True

True

False

False

False

True

Чаще всего логические операции используются для объединения нескольких операций сравнения. Например, если имеется несколько переменных «a», «b», «c» , каждая из которых должна быть меньше двадцати, и в программе необходимо проверить этот факт, формулируется условие (a<20) And (b<20) And (c<20) которое выполняется (результат равен True – истина) только в случае, когда значение каждой переменной меньше двадцати. Если хотя бы одна переменная содержит значение большее или равное двадцати, условие не выполняется и результат сравнения будет равен False.