- •1. Теоретические основы
- •Структура редактора vba
- •Интеллектуальные возможности vba
- •Встроенные диалоговые окна
- •2. Основы программирования на vba Допустимые имена
- •Переменные
- •Оператор присвоения
- •Оператор With
- •Операторы управления
- •Оператор условного перехода
- •Оператор выбора
- •Оператор For – Next
- •Оператор For Each
- •Оператор While – Wend
- •Оператор Do – Loop
- •Методы формы
- •События формы
- •Элементы управления
- •Общие свойства элементов управления
- •Общие методы элементов управления
- •Общие события элементов управления
- •Кнопка (CommandButton)
- •Поле (TextBox)
- •Надпись (Label)
- •Переключатель (OptionButton)
- •Список (ListBox)
- •Поле со списком (ComboBox)
- •Отображение встроенных диалоговых окон
- •4. Задания для самостоятельной работы Задание 1. Работа со встроенными диалоговыми окнами
- •Задание 2. Использование элементов управления набора вкладок и набора страниц
- •Задание 3. Добавление данных в таблицу Excel
- •Задание 4 Добавление данных на лист «Реализация товаров» Задание 5. Добавление и удаление данных (с применением вкладок)
- •Задание 6. Поиск и изменение данных в таблицах.
- •Задание 7. Сортировка данных Задание 8. Создание ведомости (отчета)
- •Задание 9. Оформление курсовой работы.
- •Требования к курсовой работе
- •Задания на курсовую работу
Переменные
В VBA переменные используются для временного хранения данных в оперативной памяти, т.е. они идентифицируют область в памяти , где хранится некоторая информация.
Объявить переменную можно двумя способами: явным и неявным.
Явное объявление означает, что переменная должна быть объявлена прежде чем ее можно использовать. Явно переменную можно объявить одним из следующих способов:
Dim ИмяПеременной As Тип
Private ИмяПеременной As Тип
Static ИмяПеременной As Тип
Public ИмяПеременной As Тип
Dim , Private , Static , Public - ключевые слова, определяющие где и как можно использовать переменную
ИмяПеременной – имя переменной, удовлетворяющее стандартным правилам именования переменных
Тип – тип данных переменной
Например, следующая инструкция объявляет переменную целочисленного типа:
Dim N As Integer
Если тип данных при объявлении переменной опущен, то по умолчанию переменная получает тип Variant
Обычно переменные объявляют в начале процедуры или функции, хотя можно это делать и в любом месте программы до того, как в коде встречается первая ссылка на них.
Неявное объявление переменной осуществляется включением в конец ее имени специального символа, устанавливающего тип переменной. В этом случае переменную не надо объявлять до того, как ее использовать. Например. Применяются следующие символы:
% - тип Integer
& - тип Long
@ - тип Currency и другие.
Оператор присвоения
Оператор присвоения присваивает значение выражения переменной константе и или свойству объекта. Оператор присвоения всегда включает знак равенства.
Синтаксис:
[Set] Переменная (или Постоянная или Свойство Объекта) = Выражение
Инструкция Set необязательна и чаще всего опускается. Оператор присвоения предписывает выполнить выражение, заданное в го правой части, и присвоить результат переменной, имя которой указано в левой части. Например, инструкция Set присваивает объектной переменной Кнопка элемент управления «Кнопка»:
Set Кнопка = CommandButton1
Оператор With
Оператор With избавляет программиста от утомительной обязанности использовать большое количество повторений имени одного и того же объекта при работе с его свойствами и методами. Кроме того, он структурирует код, делая его более прозрачным:
With Range (“A1”)
. Value = 3
. Font. Italic = True
End With
Операторы управления
В VBA имеется несколько операторов управления ходом выполнения программы. Функционально они делятся на две группы:
- перехода и выбора (GoTo, If – Then – Else, Select – Case)
- повтора (For – Next, For – Each, Do – Loop, While – Wend)
Оператор условного перехода
Оператор условного перехода задет выполнение определенных групп инструкций в зависимости от значения выражения
Синтаксис:
If Условие Then [Инструкция] [Else Инструкция_else]
Если Условие принимает значение True, то выполняется Инструкция, если False, то Инструкция_else. Ветвь Else является необязательной. Например, если скидка 5% применяется только в суммам больше 1000, то в VBA можно записать:
If Сумма >1000 Then Скидка = 0,05 Else Скидка = 0
Или, что равносильно:
If Сумма >1000 Then Скидка = 0,05
Чаще применяется так называемая блочная структура:
If Сумма >1000 Then
Скидка = 0,05
Else
Скидка = 0
End If