- •Visual Basic for Applications (vba). Лабораторные работы. Часть 1 Введение
- •Тема № 1: «Запись новых макросов в Excel. Выполнение макросов»
- •Задание №1
- •Варианты задания
- •Тема №2: «Написание новых макросов и процедур»
- •Dim имя_переменной1 [, имя_переменной2]
- •Dim имя_переменной1 [As тип1] [, имя_переменной2 [As тип2] ]
- •Типы данных
- •MsgBox Сообщение[,Кнопки][,Заголовок]
- •Возможные комбинации кнопок и значков
- •Задание №2
- •Варианты задания
- •Тема №3: «Создание формы»
- •Задание №3
- •Варианты задания
Dim имя_переменной1 [As тип1] [, имя_переменной2 [As тип2] ]
Аргументы:
1) имя_переменнойN представляет любое допустимое имя переменной VBA,
2) типN – любое из имен типов данных VBA.
Типы данных
Тип данных |
Размер области памяти в байтах |
Описание |
Integer |
2 |
Целые числа от -32 768 до +32 767 |
Long |
4 |
Длинные целые числа от -2 147 483 648 до +2 147 483 647 |
Single |
4 |
Числа с плавающей точкой одинарной точности |
Double |
8 |
Числа с плавающей точкой двойной точности |
Currency |
8 |
Числа с фиксированной точкой (денежный) |
Byte |
1 |
Целые числа от 0 до 255 |
String |
1 байт на 1 символ |
Текстовая информация |
Date |
8 |
Даты и время |
Boolean |
2 |
Логические значения True и False |
Object |
4 |
Ссылка на объект |
Variant |
16 байтов + 1 байт на 1 символ |
Любые из перечисленных типов данных. Является типом по умолчанию |
Например,Dim s As String, С As Integer, X As Byte
Если нужна величина, которая бы не меняла своего значения в процессе выполнения процедуры, то применяются константы. Для их объявления используется оператор Const, имеющий следующий синтаксис:
Const ИмяКонстанты As ТипДанных = Значение
Например:Const Gruppa As Integer = 25
5. Операторы производят действия с объектами и переменными.
При записи операторов необходимо придерживаться следующих правил:
- каждый новый оператор записывается с новой строки.
- чтобы записать несколько операторов на одной строке, их разделяют между собой двоеточием.
- если оператор не помещается в одной строке, то необходимо поставить в конце строки пробел и знак подчеркивания «_» и продолжить не поместившуюся часть на следующей строке.
6. Оператор присваивания используется, если какой-то переменной нужно присвоить новое значение. Он имеет следующий синтаксис:
Имя_переменной = выражение
Сначала вычисляется выражение в правой части, а затем результат присваивается переменной, стоящей в левой части.
Выражение может быть арифметическим, текстовым или логическим. Для записи выражений в VBA используются операторы: арифметические, логические, текстовые и операторы сравнения. Все операторы VBA аналогичны операторам в формулах Excel.
Например, у=а+с.
7. Список операторов (с указанием приоритета)
Знак |
Действие |
Тип оператора |
Приоритет |
^ |
возведение в степень |
арифметические |
1 |
— |
изменение знака |
2 | |
* |
умножение |
3 | |
/ |
деление |
3 | |
\ |
целочисленное деление |
4 | |
Mod |
остаток от деления |
5 | |
+ |
сложение |
6 | |
— |
вычитание |
6 | |
& |
слияние строк (конкатенация) |
строковый |
7 |
= |
равно |
сравнения |
8 |
|
не равно |
9 | |
< |
меньше |
10 | |
> |
больше |
11 | |
<= |
меньше либо равно |
12 | |
>= |
больше либо равно |
13 | |
Like |
подобно |
14 | |
Is |
в точности такой, как |
15 | |
Not |
НЕ |
логические |
16 |
And |
И |
17 | |
Or |
ИЛИ |
18 | |
Xor |
исключающее ИЛИ |
19 | |
Eqv |
тождественно |
20 | |
Imp |
следует |
21 |
Например: Y = a^(1/3)+(a^2+Exp(-b))/(Sin(a)^2-Log(b))
Во время вычисления сложных выражений вначале выполняются операторы с меньшими номерами приоритета, затем с большими. Например, в выражении А1^3 + 10 вначале выполнится возведение в степень, а затем к полученному результату добавится 10. Если операторы имеют одинаковый приоритет, действия выполняются слева направо.
В арифметическом выражении можно использовать стандартные математические функции. Чтобы получить перечень всех математических функций, достаточно набрать имя любой известной математической функции (например, SIN), а затем нажать клавишу F1 и ниже описания выбранной функции выбрать ссылку на Математические функции. В полученном перечне можно получить справку о назначении любой из встроенных математических функций и ее аргументе.
8. Оператор вывода MsgBox осуществляет вывод информации в диалоговом окне и имеет следующий синтаксис: