- •1 Некоторые сведения о программировании на vba
- •1.1 Вызов редактора Visual Basic.
- •1.2 Состав проекта
- •1.3 Элементы управления
- •1.4 Некоторые свойства и события элементов управления
- •1.5 Типы данных в vba
- •1.6 Некоторые встроенные функции vba
- •Функция InputBox
- •Процедура MsgBox
- •1.7 Процедуры и функции
- •1.8 Основные объекты vba
- •Свойства и методы объектов семейства Worksheets
- •Объекты Cells, Range и Selection
- •Свойства и методы объекта Range
- •1.9 Основные операторы vba
- •Оператор присваивания
- •Условный оператор
- •If условие then инструкции 1 else инструкции 2
- •If условие then
- •If условие1 then
- •If условие then инструкции 1
- •Оператор выбора
- •Оператор с заданным количеством повторений.
- •Оператор цикла по множеству
- •Операторы цикла Do … Loop
- •Оператор цикла While … Wend
- •2 Варианты заданий Вариант 1
- •Вариант 2
- •Вариант 3
- •Вариант 4
- •Вариант 5
- •Вариант 6
- •Вариант 7
- •Вариант 8
- •3 Образец выполнения работы
- •3.1 Задание
- •3.2 Создание исходных таблиц
- •3.3 Создание формы UserForm1
- •3.4 Создание формы UserForm2
- •3.5 Создание функции пользователя
- •3.4 Создание формы UserForm3
- •Список литературы
1.5 Типы данных в vba
Byte – целые числа из диапазона от 0 до 255;
Boolean – логический тип, принимает одно из двух значений True (истина) или False (ложь);
Integer – целые числа из диапазона от –32768 до +32767;
Long, – длинное целое;
Currency – денежный тип (содержит четыре символа справа от запятой и 15 символов слева от запятой);
Single – вещественные числа из диапазона от –3,402823E38 до –1,401298E–45 для отрицательных чисел и от +1,401298E–45 до +3,402823E38 для положительных;
Date – тип даты;
String – строковый тип данных;
Range – диапазон ячеек;
Variant – тип данных, устанавливаемый по умолчанию для тех переменных, которые не были описаны явно.
Описание переменных на уровне модуля или процедуры осуществляется с помощью инструкции вида:
Dim ИмяПеременной AS Тип
В одной инструкции Dim можно описать несколько переменных, отделяя их запятой. Тип данных надо указывать для каждой переменной. Таких инструкций может быть несколько. Инструкции Dim обычно записываются в начале модуля или процедуры. Пример:
Dim n AS Integer, k AS Byte
1.6 Некоторые встроенные функции vba
В VBA имеется большое количество встроенных функций. Приведем описания некоторых из них.
Функция |
Описание |
Abs(число) |
Модуль числа |
Rnd |
Случайное число из интервала (0,1) |
Int(число) |
Отбрасывает дробную часть числа |
Str(число) |
Преобразует число в строку символов |
Date |
Значение текущей системной даты |
Функция InputBox
Выводит на экран диалоговое окно (рис. 1.5), содержащее сообщение и текстовое поле для ввода. Окно закрывается после нажатия одной из кнопок или клавиши Enter.
Синтаксис функции:
InputBox ("Текст сообщения", "Заголовок окна", Значение по умолчанию, Xpos, Ypos, Имя файла справки, Номер раздела справки)
Обязательным является только первый аргумент. Если задано значение по умолчанию, оно появляется в текстовом поле. Xpos, Ypos задают расстояние от границ экрана до границ окна. Эта функция чаще всего используется в операторе присваивания вида:
Переменная = InputBox ("Текст сообщения")
Например, fam = InputBox ("Введите фамилию")
Рисунок 1.5 – Диалоговое окно InputBox
Процедура MsgBox
Выводит на экран диалоговое окно, содержащее сообщение. Обычно используется для вывода результатов. Может содержать кнопки и значки, которые выбирает программист.
Синтаксис процедуры:
MsgBox("Текст сообщения", Кнопки, "Заголовок окна", Имя файла справки, Номер раздела справки)
Обязательным является только первый аргумент. Чтобы включить в текст сообщения числа или даты, надо преобразовать их к строковому типу с помощью функции Str и соединять с текстом символами &. Наборы кнопок и информационных значков можно задавать с помощью констант VBA или их числовых значений (см. табл. 1.1 и 1.2).
Таблица 1.1 – Значения для отображения кнопок
Константа VBA |
Значение |
Отображаемые кнопки |
VbOKOnly |
0 |
OK |
VbOKCancel |
1 |
OK, Отмена |
VbAbortRetryIgnore |
2 |
Стоп, Повторить, Пропустить |
VbYesNoCancel |
3 |
Да, Нет, Отмена |
VbYesNo |
4 |
Да, Нет |
VbRetryCancel |
5 |
Повторить, Отмена |
Таблица 1.1 – Значения для отображения значков
Константа VBA |
Значение |
Отображаемые значки |
VbCritical |
16 |
|
VbQuestion |
32 |
|
VbExclamation |
48 |
|
VbInformation |
64 |
|
Примеры использования процедуры MsgBox:
MsgBox "Товар стоит " & Str(сумма) & " гривен"
MsgBox "Это уравнение не имеет решений", vbExclamation
MsgBox "Значение Х=" & Str(X), vbInformation, "Ответ задачи"
MsgBox "На ноль делить нельзя! ", vbCritical
Рисунок 1.6 – Примеры использования процедуры MsgBox
