Логические операторы в VBA используются для выполнения логических операций и возвращают значение True или False. 4 Логические операторы позволяют объединять условные высказывания в более сложные логические выражения. 4 Некоторые из них и их действия:
- Not. 15 Выполняет логическое отрицание выражения. 1 Если выражение оценивается как True, то Not возвращает False, если как False — то True. 1
- And. 15 Выполняет логическую комбинацию двух выражений. 1 Если оба выражения оцениваются как True, то And возвращает True, если хотя бы одно из выражений вычисляется как False — то False. 1
- Or. 15 Выполняет логическое включение двух выражений. 1 Если одно из выражений вычисляется как True или оба как True, то Or возвращает True, если ни одно из выражений не даёт результат True — то False. 1
- Xor. 1 Выполняет логическое исключение для двух выражений. 1 Если точно одно из выражений вычисляется как True, а не оба, то Xor возвращает True, если оба выражения принимают значение True или оба принимают значение False — то False. 1
Побитовые операторы в VBA используются для логического сравнения битов двоичных представлений чисел и возвращают число, представляющее результат побитового сравнения. 4 Количество битов отличается в зависимости от типа сравниваемых целочисленных данных, при этом рассматривается каждый бит. 4 Некоторые из побитовых операторов и их действия:
- And. 1 Сравнивает двоичные представления, одно двоичное положение (бит) за раз. 1 Если оба бита в заданной позиции имеют значение 1, то 1 помещается в эту позицию в результате, если любой бит равен 0 — то 0 помещается в это положение в результате. 1
- Or. 1 Аналогичен оператору And, за исключением того, что 1 назначается биту результата, если одно или оба из сравниваемых битов равно 1. 1
- Xor. 1 Присваивает 1 биту результата, если точно один из сравниваемых битов (не оба) равен 1. 1
Побитовые операции можно выполнять только для целочисленных типов, значения с плавающей запятой необходимо преобразовать в целочисленные типы, прежде чем побитовая операция может продолжиться. 1