Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Создание пользовательских п ÒÉÌÏÖÅÎÉÊ ÓÒÅÄÓÔÁÍ...doc
Скачиваний:
6
Добавлен:
18.11.2019
Размер:
2.02 Mб
Скачать

Приоритет операций

Каждая операция имеет приоритет. Вычисления производятся слева направо в порядке приоритета операций. Порядок действий может быть изменен при помощи скобок.

В следующей таблице операции расположены по старшинству приоритетов.

Приоритет операций

Арифметические операции

Операции сравнения

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

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

=

Not

Отрицание(-)

<>

And

Умножение (*) или деление (/)

<

Or

Деление нацело (\)

>

Xor

Остаток от деления (Mod)

<=

Eqv

Сложение (+) или вычитание (-)

>=

Imp

Конкатенация (&)

Like

Операции с другими типами данных

Тип Variant

Переменная, которая используется без объявления, а также переменная, тип которой явно не задан, относится к типу Variant.

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

Пример

Sub Typevar()

Dim anyone As Variant

anyone = 2

Debug.Print TypeName(anyone) 'распечатывается Integer

anyone = "Строка"

Debug.Print TypeName(anyone) ‘распечатывается String

anyone = 12.3

Debug.Print TypeName(anyone) ‘распечатывается Double

anyone = True

Debug.Print TypeName(anyone) ‘распечатывается Boolean

End Sub

Процедура демонстрирует использование функции Typename для определения типа значения, содержащегося в единицу времени в переменной anyone типа Variant.

Переменная типа Variant может содержать специальные значения: Empty, Null, Nothing или Error.

Значение

Описание

Empty

Устанавливается при инициализации. В случае использования переменной как числа означает нуль, а в случае использования ее как символа – строку нулевой длины (пустую строку).

Значение Empty может быть установлено специально, чтобы показать отсутствие значения.

Null

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

Nothing

Устанавливается при инициализации объектной переменной или оператором Set. Свидетельствует об отсутствии ссылки на объект (см. Раздел 6.Объекты MS Excel).

Error

Специальное значение, устанавливаемое функцией CVErr. Позволяет программе выполнить альтернативное действие в ситуации ошибки (системные ошибки выполнения, например, ошибка деления на нуль, не имеются в виду). Подробно см. Help.

Важно

  • Используйте функции IsEmpty, IsNull, IsError для сравнения значения переменной со специальными значениями.

При вычислении арифметических выражений переменные типа Variant, содержащие числовые значения, ведут себя обычным образом: переменные этого типа преобразуются в другой тип в сторону увеличения длины результата.

Если в арифметическом выражении участвует переменная типа Variant, содержащая символьное значение, то ее значение преобразуется в число, если это возможно. В противном случае числовые значения преобразуются в строки и, если выполняемая операция не операция сложения, то возникает ошибка.

Использование переменной типа Variant поглощает больше ресурсов компьютера, чем использование переменной элементарного типа.