Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 3.docx
Скачиваний:
5
Добавлен:
01.05.2025
Размер:
38 Кб
Скачать
☆

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

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

Можно использовать любое действительное выражение, имеющее результат логического типа, в качестве операнда или число, которое VBA может преобразовать в значение типа Boolean.

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

Таблица 6

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

Знак операции

Назначение

And

Возвращает результат конъюнкции (логического И) для двух выражений.

Eqv

Используется для проверки логической эквивалентности двух выражений.

Not

Выполняет над выражением операцию логического отрицания.

Or

Выполняет операцию логического ИЛИ (сложения) для двух выражений.

Xor

Выполняет операцию исключающего ИЛИ для двух выражений.

Логическая операция And

Синтаксис:

результат= выражение1 AND выражение2

Выражение1 и выражение2 – это логические выражения. Результатом выполнения логической операции And всегда является логическое значение.

Если оба выражения имеют значение True, результат имеет значение True. Если хотя бы одно из выражений имеет значение False, результат имеет значение False. Возвращаемые оператором значения представлены в таблице 7.

Таблица 7

выражение1

выражение2

результат

True

True

True

True

False

False

True

Null

Null

False

True

False

False

False

False

False

Null

False

Null

True

Null

Null

False

False

Null

Null

Null

В данном примере демонстрируется использование And для выполнения операции конъюнкции (логического умножения) двух выражений.

Dim A, B, C, D, MyCheck

A = 10: B = 8: C = 6: D = Null ' Инициализирует переменные.

MyCheck = A > B And B > C ' Возвращает True.

MyCheck = B > A And B > C ' Возвращает False.

MyCheck = A > B And B > D ' Возвращает Null.

Логическая операция Eqv

Синтаксис:

результат= выражение1 Eqv выражение2 , где

выражение1 и выражение2 – это логические выражения;

результат - логическое значение.

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

Таблица 8

выражение1

выражение2

результат

True

True

True

True

False

False

False

True

False

False

False

True

Логическая операция OR

Синтаксис:

результат= выражение1 OR выражение2

Если одно или оба выражения истинны (имеют значение True), результат также имеет значение True. Возвращаемые оператором значения представлены в таблице 9.

Таблица 9

выражение1

выражение2

результат

True

True

True

True

False

True

True

Null

True

False

True

True

False

False

False

False

Null

Null

Null

True

True

Null

False

Null

Null

Null

Null

В данном примере демонстрируется использование операции Or для выполнения операции дизъюнкции (логического сложения) двух выражений.

Dim A, B, C, D, MyCheck

A = 10: B = 8: C = 6: D = Null ' Инициализирует переменные.

MyCheck = A > B Or B > C ' Возвращает True.

MyCheck = B > A Or B > C ' Возвращает True.

MyCheck = A > B Or B > D ' Возвращает True.

MyCheck = B > D Or B > A ' Возвращает Null.

Логическая операция XOR

Синтаксис:

результат= выражение1 XOR выражение2

Если одно и только одно из выражений истинно (имеет значение True), результат имеет значение True. Если хотя бы одно из выражений имеет значение Null, результат также имеет значение Null. Если ни одно из выражений не имеет значение Null, результат определяется следующим образом:

Таблица 10

выражение1

выражение2

результат

True

True

False

True

False

True

False

True

True

False

False

False

В данном примере демонстрируется использование оператора Xor для выполнения операции исключающего ИЛИ для двух выражений.

Dim A, B, C, D, MyCheck

A = 10: B = 8: C = 6: D = Null ' Инициализирует переменные.

MyCheck = A > B Xor B > C ' Возвращает False.

MyCheck = B > A Xor B > C ' Возвращает True.

MyCheck = B > A Xor C > B ' Возвращает False.

MyCheck = B > D Xor A > B ' Возвращает Null.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]