Знаки математических операций
Таблица 9.3.1.1
Знак | Операция | Пример | Результат |
- | Знак числа (смена знака) | -6 | -6 |
^ | Возведение в степень | 3^2 | |
* | Умножение | 4*8 | |
/ | Деление | 10/3 | 3,333333… |
\ | Целочисленное деление | 10\3 | |
mod | Остаток от деления по модулю | 10 Mod3 | |
+ | Сложение | 3+2 | |
- | Вычитание | 7-5 |
Примеры: Y = X*10, F = (x + y)/(3 + x^2), G = Sin(x).
Выражение, содержащее хотя бы один знак логической операции, называется логическим.
Результатом выполнения такого выражения является логическая величина со значением либо True (истина), либо False (ложь).
Логическими операциями могут быть:
операции отношения (сравнения). Операнды этих операций могут иметь любой тип, кроме логического типа.
Логические операции отношения
Таблица 9.3.1.2
Знак | Операция | Примеры (при значениях a=6, b=3) | Результат |
< | Меньше | b<7 | True |
> | Больше | “Вася”>“Маша” | False |
<= | Меньше или равно | a+b<=12 | True |
>= | Больше или равно | b^2>=9 | True |
<> | Не равно | a<>b | True |
= | Равно | B=10–a | False |
специальные логические операции. Операнды этих операций могут иметь только логический тип.
Специальные логические операции
Таблица 9.3.1.3
Знак | Операция | Пример | ЗначениеA | Значение B | Результат |
Not | Логическое отрицание | not A | True False | False True | |
And | Логическое умножение (И) | A and B | True True False False | True False True False | True False False False |
Or | Логическое сложение (ИЛИ) | A or B | True True False False | True False True False | True True True False |
Xor | Исключающее ИЛИ | A xor B | True True False False | True False True False | False True True False |
Строковое (текстовое)выражение может содержать операнды только символьного (текстового или строкового) типа. В языках программирования, в том числе и в VBA, имеется только одна строковая операция, которая носит название конкатенация или слияние подстрок в строку. Запись этой операции можно производить как знаком “+”, так и знаком “&” (в VBAпринято использовать знак “&”).
Примеры строкового выражения
Таблица 9.3.1.4
Знак | Пример | Результат |
& | “Крас”&“ное” | “Красное” |
+ | “Чёр”+“ное” | “Чёрное” |
Приоритеты операций
Таблица 9.3.2.1
Приоритет | Операция |
Вызов функции и выражения в скобках | |
^(возведение в степень) | |
-(смена знака числа) | |
*(умножение), / (деление), \ (целочисленное деление), Mod(деление по модулю) | |
+и – (сложение и вычитание) | |
<, >, >=, <=, <>, = | |
Not | |
And | |
Or | |
Xor |
Примечание. Приоритет операции “&” не определен, так как она не может использоваться в сочетании с другими операциями.
Встроенные функции
В VBA имеется большой набор встроенных функций, использование которых существенно упрощает программирование. Эти функции можно разделить на следующие основные категории:
математические функции;
функции проверки типов;
функции преобразования типов выражений;
функции обработки строк;
функции времени и даты;
функции выбора.
Математические функции
Таблица 9.3.3.1.1
Функция | Математическая интерпретация функции |
Abs(x) | |x|(модуль числа x). |
Atn(x) | Arctgx(арктангенс x) |
Cos(x) | Cosx(косинус x). |
Exp(x) | Экспонента (е в степени x). |
Fix(x) | Отбрасывает дробную часть числа x. |
Int(x) | Округляет вещественное число xдо целого в меньшую сторону. |
Log(x) | Lnx(натуральный логарифм x). |
Rnd() | Генерирует случайное число от 0 до 1. |
Rnd(x) | Генерирует случайное число от 0 до x. |
Sgn(x) | Знак числа x(+ или -). |
Sin(x) | Sinx (синусx). |
Sqr(x) | Корень квадратный числа x. |
Tan(x) | Tgx(тангенс x). |
Функции обработки строк
Таблица 9.3.3.4.1
Функция | Описание |
Mid(<строка>,<начало>[, <длина>]) | Возвращает из строки подстроку указанной длины, начиная с заданного символа. Если длина не указана, то возвращается вся подстрока, начиная от заданного символа |
Left(<строка>,<длина>) | Возвращает из заданной строки подстроку указанной длины, начиная с левого края строки |
Right(<строка>,<длина>) | Возвращает из заданной строки подстроку указанной длины, начиная с правого края строки |
Len(<строка>) | Возвращает длину указанной строки |
InStr(<начало>,<исходная строка>,<искомая подстрока>,<тип сравнения>) | Ищет подстроку в заданной строке, начиная с указанного символа. Тип сравнения: 0–с учетом регистра (vbBinaryCompare) 1–без учёта регистра(vbTextCompare) |
Trim(строка>) | Удаляет пробелы из начала и конца заданной строки |
Ltrim(<строка>) | Удаляет все пробелы из начала заданной строки |
Rtrim(<строка>) | Удаляет все пробелы из конца заданной строки |
Space(<количество>) | Повторяет пробел указанное количество раз |
String(<количество>, <символ>) | Повторяет заданный символ указанное количество раз |
Lcase(<строка>) | Преобразует в заданной строке все прописные буквы в строчные |
Ucase(<строка>) | Преобразует в заданной строке все строчные буквы в прописные |
StrReverse(<строка>) | Изменяет последовательность символов в заданной строке на обратную |
Asc(<Символ>) | Возвращает код символа |
Chr(<Код>) | Возвращает символ по его коду |
Str(<Число>) | Преобразует заданное число в строковое представление числа |
Val(<Строка>) | Преобразует строку, которая представляет число, в число |
Функции времени и даты
Таблица 9.3.3.5.1
Функция | Возвращаемое значение |
Date | Возвращает значение типа Variant(Date ), содержащее текущую системную дату |
Time | Возвращает значение типа Variant(Date ), содержащее текущее время по системным часам компьютера |
Now | Возвращает значение типа Variant(Date ), то есть текущую дату и время по системному календарю и часам компьютера |
Hour, Minute, Second | Возвращают значения типа Variant(Date ), содержащие целые числа, представляющие часы, минуты и секунды в значении времени. Пример: ВР=#4:35:17 PM# Час=Hour(ВР) Минута=Minute(ВР) Секунда=Second(ВР) |
Day, Month, Year | Возвращает значение типа Variant(Integer), содержащее целое число и представляющее день, месяц и год в значении даты. Синтаксис: Day(Дата), Month(Дата), Year(Дата) |
Функции выбора
Таблица 9.3.3.6.1
Функция | Возвращаемое значение |
Iif | Возвращает одну из альтернатив. Синтаксис: if(expr, truepart, falsepart),где: expr– проверяемое значение; truepart– возвращаемое значение или выражение, если exprимеет значение true; falsepart– возвращаемое значение или выражение, если exprимеет значение false |
Choose | Возвращает значение, выбранное из списка аргументов. Синтаксис: Choose(индекс, вариант -1, вариант - 2, …, вариант – n). Функцию Chooseможно использовать для выбора одного из возможных значений, представленных в виде списка. |
Switch | Возвращается значение, соответствующее первому истинному выражению в списке. Синтаксис: Switch(выражение – 1, значение –1, выражение – 2, значение – 2 , …, выражение – n, значение – n).Возвращается то значение, выражение которого принимает значение True. |