Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Сидорова-004.С34.doc
Скачиваний:
4
Добавлен:
06.01.2020
Размер:
3.08 Mб
Скачать

2.9. Встроенные функции

В VBA имеется большой набор встроенных функций, использование которых существенно упрощает программирование. Эти функции можно раз­делить на следующие основные категории: математические функции, функции обработки строк, проверки, определения и преобразования типов данных, функции времени и даты, финансовые функции и др.

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

Имя_функции(аргументы)

Аргументами функций могут быть константы, переменные, функции, арифметические выражения.

Список встроенных математических функций приведен в табл. 3.

Таблица 3

Перечень основных встроенных математических функций

Наименование

функции

Математическая запись

Запись на VBA

Примечание

Целая часть числа

Fix(x)

Выделение целой части числа x; дробная часть при этом отбрасывается, число не округляется, например:

Fix(1.2) = 1; Fix(–2.7) = –2

Абсолютное значение

|x|

Abs(x)

Корень квадратный

Sqr(x)

x>0

Показательная

ex

Exp(x)

Логарифм натуральный

ln x

Log(x)

x>0

Синус

sin x

Sin(x)

Косинус

cos x

Cos(x)

Тангенс

tg x

Tan(x)

Арктангенс

arctg x

Atn(x)

Функции, отсутствующие в числе встроенных, необходимо записывать с использованием встроенных функций и известных математических соотношений:

корень n-й степени: → x^(1/n),

→ Log(b)/Log(a), lg x = log10 x → Log(x)/Log(10),

arcsin x = → Atn(x/Sqr(1 – x^2)),

arccos x = → Atn(Sqr(1 – x^2)/x).

Аргумент тригонометрической функции должен быть в радианах. Формула перевода градусов в радианы: xрад = xград ∙ π/180°.

Например, sin 60° → Sin(60*3.14/180).

2.10. Выражения

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

В VBA всего семь арифметических операций: пять стандартных – сложение (+), вычитание (–), умножение (*), деление (/), возведение в степень (^) и две дополнительные:

целочисленное деление (\), при котором дробная часть отбрасывается, (число не округляется), например: 5 \ 2 = 2;

остаток от деления целых чисел a на b: a  Mod  b. Например, в результате выполнения операции X = 10  Mod  3 переменной X будет присвоено значение 1 (остаток от деления 10 на 3).

Арифметические выражения соответствуют общепринятым алгебраическим выражениям. Результатом вычисления является число. Операции в сложном выражении выполняются в порядке старшинства: вычисление значения функции, возведение в степень, умножение и деление, сложение и вычитание. Операции одного приоритета выполняются последовательно слева направо. Для изменения приоритета используются круглые скобки. Запись выражения выполняется в одну строку, в выражении нельзя опускать знак умножения, ставить подряд два знака операций. Если в числителе или знаменателе дроби имеется многочлен, то его необходимо заключать в скобки.

Логические выражения, примером которых являются отношения, применяются для сравнения значений выражений. Приоритет операций отношения ниже приоритета арифметических операций. Операции отношения (сравнения) следующие:

– равенство ( = );

– больше ( > ), меньше ( < );

– больше или равно ( >= ), меньше или равно ( <= );

– не равно ( < > ).

Операторы сравнения возвращают значение True, если утверждение истинно, или False, если утверждение ложно.

При проверке нескольких условий применяются логические операции:

And – логическое И;

Or – логическое ИЛИ;

Not – логическое отрицание.

Примеры записи арифметических и логических выражений на языке VBA приведены соответственно в табл. 4 и 5.

Таблица 4

Запись арифметических выражений на языке VBA

Математическая запись

Запись на языке VBA

2 * a* (–b)

a / (b * c) или a / b /c

(a * x ^ 2 + b * x + c) / (d – 2.5) ^ (1 / 3)

Sin(x ^ 3) ^ 2 + Exp(–4 * x)

Log(x) / Log(10) * Cos(2 * x) / (Sqr(b) +c)

Таблица 5

Запись логических выражений на языке VBA

Математическая запись

Запись на языке VBA

b2 – 4 ac > 0

b ^ 2 – 4 * a * c > 0

k ≠ m

k < > m

– 5 ≤ x ≤ 7

x >= –5 And x <= 7

x > y и y > 0

x > y And y > 0

x = 0 или x = 1

x = 0 Or x = 1