
- •Лекция №1. Общая характеристика языков программирования.
- •1.Языки программирования
- •2.Трансляторы
- •3.История создания языков
- •Лекция №2. Введение в Visual Basic for Application
- •1. Основы vba
- •2.Редактор Visual Basic
- •3. Величины
- •Переменные
- •Встроенные типы данных vba.
- •Константы.
- •Лекция №3. Некоторые объекты vba и их свойства.
- •1. Объектная модель Excel.
- •2. Объекты vba
- •3.Некоторые объекты vba.
- •Лекция №4. Форма и элементы управления
- •1.Форма
- •Свойства формы
- •Методы формы
- •События формы
- •Инструкции, управляющие процессами начала и завершения работы с формой
- •2.Элементы управления
- •Общие свойства элементов управления
- •Общие методы элементов управления
- •Общие события элементов управления
- •Кнопка (CommandButton) Свойства объекта
- •Поле (TextBox)
- •Свойства объекта
- •Счетчик
- •Свойства объекта
- •Список (ListBox)
- •Свойства объекта
- •Методы объекта
- •Поле со списком (ComboBox)
- •Свойства объекта
- •Методы объекта
- •Объект Collection
- •Методы объекта
- •Свойства объекта
- •Набор страниц (MultiPage)
- •Свойства объекта
- •Методы объекта
- •Набор вкладок (TabStrip)
- •Календарь (Calendar)
- •Свойства объекта
- •Методы объекта
- •Отображение встроенных диалоговых окон
- •Оператор rSet
- •2.Условные операторы
- •Оператор If…Then…Else
- •Оператор выбора Select Case
- •Функция iIf
- •Оператор безусловного перехода GoTo
- •3.Операторы цикла
- •Лекция №8. Структурированные типы данных
- •1. Массив
- •2. Перечисляемый тип
- •3. Запись
- •Лекция №9. Диалоговые окна
- •1. Функция InputBox
- •2. Функция MsgBox
Функция iIf
Используется в случае с простым ветвлением. Имеет следующий вид:
IIf (выражение, значениеЕслиДа, значениеЕслиНет)
Эта функция проверяет значение выражения, если оно истинно, то функция возвращает значениеЕслиДа, в противном случае – значениеЕслиНет.
Например:
D2 = IIf (I<=10, 250, 50)
В зависимости от значения величины I переменной D2 будет присвоено либо значение 250, либо 50.
Оператор безусловного перехода GoTo
Помимо условных операторов в VBA существует оператор безусловного перехода, который меняет порядок выполнения операторов в программе (безусловно).
GoTo имяМетки
После ключевого слова идет имя метки. Метка – это идентификатор, приписанный оператору программы и используемый в других частях программы для обращения к этому оператору.
Для того чтобы отметить оператор в программе, указывается имя метки, ставится двоеточие и указывается нужный оператор. Для того чтобы организовать переход на отмеченный оператор, указывается служебное слово GoTo и указывается имя метки, на которую осуществляется переход.
Пример:
Label1: MsgBox (“Использование метки”)
GoTo label1
3.Операторы цикла
For…Next (цикл со счетчиком)
Данный оператор позволяет выполнять группу операторов (которая называется телом цикла) заранее определенное количество раз, при этом параметр цикла (счетчик) последовательно принимает ряд значений, определенный пользователем в заголовке цикла.
For счетчик = начало To конец [Step шаг]
[БлокОператоров1]
[Exit For]
[БлокОператоров2]
Next [счетчик]
Счетчик – это числовой параметр цикла, который должен принимать ряд значений от значения начало до значения конец. Причем этот ряд может образовывать как возрастающую, так и убывающую арифметическую прогрессию. Необязательный параметр шаг при необходимости мог бы указывать, с каким шагом следует пробегать заданный ряд значений (по умолчанию он равен 1).
БлокОператоров1 – это блок операторов, который будет выполнен пока счетчик не пробежит ряд значений до конца. Прервать же данный пробег вправе только оператор Exit For, предназначенный для выхода из цикла не дожидаясь его завершения и передачи управления оператору, следующему непосредственно за Next. Как правило, оператор Exit For используется в тех местах тела цикла, где требуется из него выйти по условию.
В конце цикла ставится заключительный оператор Next, после которого указывается счетчик цикла.
Do … Loop (цикл с условием)
Если не известно заранее сколько раз должно выполняться тело цикла, но известно условие при котором цикл должен продолжать или прекращать свою работу, то используется цикл с условием.
Существует два вида циклов с условием: с предусловием и с постусловием. Соответственно цикл Do … Loop имеет две синтаксические конструкции:
/Предусловие/
Do [{While Until} условие]
[блокОператоров1]
[Exit Do]
[блокОператоров2]
Loop
/Постусловие/
Do
[блокОператоров1]
[Exit Do]
[блокОператоров2]
Loop [{While Until} условие]
Различие конструкций в том, что в первом случае условие будет проверяться до выполнения блока операторов (предусловие), а во втором – после (постусловие).
Если при проверке условия в конструкции стоит ключевое слово While, то блок операторов будет выполняться, пока условие остается истинным, если же стоит Until, то блок операторов будет выполняться, пока условие остается ложным.
Условие не является обязательным. Если его нет, то по умолчанию оно трактуется, как False.
Необязательный оператор Exit Do аналогичен оператору Exit Forв цикле For…Next. Он также прекращает выполнение цикла и передает управление на оператор, следующий непосредственно за Loop.
While…Wend
Данный оператор является частным случаем оператора Do…Loop.
While условие
БлокОператоров
Wend
БлокОператоров выполняется пока условие истинно.
For Each … Next (циклы по структуре данных)
В этом операторе тело цикла выполняется для каждого элемента в массиве.
For Each элемент In группа
[блокОператоров1]
[Exit For]
[блокОператоров2]
Next [элемент]
Здесь элемент – это переменная, пробегающая в качестве значений элементы массива. Элемент обязан быть переменной типа Variant.