Visual Basic for Application.

Краткие теоретические сведения

1. Синтаксис и семантика языка программирования VBA

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

Основные синтаксические принципы этого языка следующие:

Семантика языка — это смысловое значение слов. В программировании — начальное смысловое значение операторов, основных конструкций языка и т. п.

Оператор — это наименьшая способная выполняться единица кода VBA. Оператор может объявлять или определять переменную, устанавливать параметр компилятора VBA или выполнять какое-либо действие в программе.

Арифметических операторов в VBA всего 7.

Четыре стандартных: сложение (+), вычитание (−), умножение (*), деление (/), и еще три:

Оператор присваивания в VBA — это знак равенства. Можно записывать так:

Let nVar = 10
а можно еще проще:
nVar = 10

Здесь не путайте знак равенства с оператором равенства. Последнее выражение означает "присвоить переменной nVar значение 10", а если строка выглядит так: If (nVar = 10), то это значит "если значение переменной nVar равно 10".

Операторов сравнения в VBA всего 8:

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

Очень часто при проверке нескольких условий используются логические операторы:

Помнить нужно про And, Or, Not, остальные логические операторы используются редко.

Переменные — это контейнеры для хранения изменяемых данных. Без них не обходится практически ни одна программа. Для простоты переменную можно сравнить с номерком в гардеробе — вы сдаете в гардероб какие-то данные, в ответ вам выдается номерок. Когда вам опять потребовались эти данные, вы "предъявляете номерок" и получаете их.

Каждая переменная имеет имя. Обращение к переменной происходит по имени. Правила выбора имен в VBA едины для многих элементов (переменные, константы, функции, процедуры и т. п.):

При создании программ VBA рекомендуется определиться с правилами, по которым будут присваиваться имена объектам — соглашение об именовании. Чаще всего используется так называемое венгерское соглашение (в честь одного из программистов Microsoft, Charles Simonyi, венгра по национальности):

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

2. Основные типы данных VBA

В VBA предусмотрены следующие типы данных:

Обозначения типов данных является ключевыми словами языка (и выделяется после набора в редакторе VBA).

Над различными типами данных допустимы различные операции. В VBA имеются три основных типа операций:

3. Приоритеты операций

Приоритет Операция
1
2
3
4
5
6
7
8
9
10
11
12
Вызов функции и скобки
^
- (смена знака)
*, /
\
Mod
+, –
>, <, >=, <=, <>, =
Not
And
Or
Xor

4. Математические функции

Функция Возвращаемое значение
Abs (<число>) Модуль (абсолютная величина) числа
Atn (<число>) Арктангенс
Cos (<число>) Косинус
Exp (<число>) Экспонента, т. е. результат возведения основания натурального логарифма в указанную степень
Log(<число>) Натуральный логарифм
Rnd (<число>) Случайное число из интервала [0,1).

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

Перед вызовом функции Rnd используйте инструкцию Randomize без аргумента
Sgn (<число>) Знак числа
Sin (<число>) Синус
Sqr (<число>) Квадратный корень из числа
Tan (<число>) Тангенс
Fix (<число>)

Int (<число>)
Обе функции, Int и Fix, отбрасывают дробную часть числа и возвращают целое значение.

Различие между функциями int и Fix состоит в том, что для отрицательного значения аргумента функция Int возвращает ближайшее отрицательное целое число, меньшее либо рaвное указанному, a Fix — ближайшее отрицательное целое число, большее либо равное указанному