- •Лабораторная работа №1 Язык программирования vba. Основные понятия и область применения.
- •История развития вычислительной техники.
- •Что такое язык программирования и компьютерные программы.
- •Возникновение и развитие алгоритмического языка Basic
- •Преимущества и недостатки, область применения vba
- •Проектирование программы.
- •Реализация проекта. Добавление новой формы.
- •Создание второй процедуры.
- •Добавление программного кода в новую процедуру.
- •Тестирование программы. Запуск программы в редакторе vbа.
- •Отладка.
- •Контрольные понятия для изучения.
- •Порядок выполнения.
- •Лабораторная работа №3 Синтаксис языка программирования vba.
- •Диалоговые окна vba.
- •InputBox (сообщение [, заголовок] [, default] [, xpos] [, ypos])
- •Переменные. Типы данных
- •Константы
- •Операторы присваивания.
- •Арифметические выражения
- •Математические функции
- •Контрольные понятия для изучения.
- •Порядок выполнения.
- •Лабораторная работа №4 Синтаксис языка программирования vba (продолжение).
- •Логические выражения.
- •Оператор перехода
- •Конструкции принятия решений
- •Общий вид краткой формы оператора ветвления и одну строку:
- •If условие Then оператор [Else оператор]
- •Форма условного перехода if...Then...ElseIf…Else...End If
- •If условие1 Then
- •Синтаксис оператора условного перехода Select Case имеет вид:
- •Оператор цикла For… Next.
- •Конструкции Do While и Do Until.
- •Конструкция While … Wend.
- •Контрольные понятия для изучения.
- •Порядок выполнения.
- •Лабораторная работа №5 Синтаксис языка программирования vba (продолжение).
- •Массивы
- •Макрофункции для работы с массивом :
- •Контрольные понятия для изучения.
- •Порядок выполнения.
- •Практическая работа №1
- •Лабораторная работа №6 Разбор работы программы сортировки двумерного массива.
- •Програма сортування двовимірного масиву.
- •Контрольные понятия для изучения.
- •Порядок выполнения.
- •Лабораторная работа №7 Синтаксис языка программирования vba (продолжение).
- •Пользовательские процедуры
- •Описание пользовательской функции имеет следующий синтаксис:
- •Описание пользовательской подпрограммы имеет следующий синтаксис:
- •Контрольные понятия для изучения.
- •Порядок выполнения.
- •Лабораторная работа №8 Понятие объектно-ориентированного языка программирования. Объекты и события.
- •Понятие объекта.
- •Классы объектов и отдельные объекты.
- •Объектная модель
- •Контрольные понятия для изучения.
- •Порядок выполнения.
- •Лабораторная работа №9 Особенности применения vba в Microsoft Excel.
- •Объекты ole и ActiveX.
- •Объекты. Методы и свойства объектов.
- •Иерархия объектов. Ссылки на объект.
- •Методы.
- •Свойства.
- •Методы vba
- •Пример программы работы с ячейкой текущей книги Excel.
- •Контрольные понятия для изучения.
- •Порядок выполнения.
Лабораторная работа №5 Синтаксис языка программирования vba (продолжение).
Цель: изучить использование основных элементов языка программирования VBA.
Основные вопросы.
Понятие массива.
Многомерность массивов.
Работа с фиксированными и динамическими массивами.
Макрофункции для работы с массивами.
Пользовательские процедуры.
Массивы
Массив - это переменная, содержащая несколько значений и являющаяся по своей сути пронумерованной группой значений одного и того же типа. Массивы бывают нескольких типов, одномерными и многомерными.
Одномерный массив - это пронумерованный список значений, где каждый элемент этого списка имеет свой уникальный номер. Уникальный номер - это неповторяющийся номер (индекс) каждого элемента массива. В VBA одномерный массив можно представить в виде строки.
Многомерный массив - это переменная, которая содержит в себе набор списков. В языке VBA допускается описание массивов, имеющих до 60 размерностей, но, как правило, используются двухмерные массивы. В VBA двухмерный массив можно представить в виде строк и столбцов, поэтому их довольно часто называют таблицами или матрицами.
Прежде чем использовать массив его необходимо описать. Так как массив является переменной, то действия с массивом во многом похожи на действия с обычными переменными. В массивах используются те же типы данных, что и в обычных переменных, причём массив должен содержать только однотипные данные, однако его ограничение можно обойти, если создать массив типа Variant (существует функция Array, которая позволяет создавать массив в ходе выполнения программы, без предварительного описания).
При об'явлении массива необходимо учитывать, что массивы делятся также на фиксированные и динамические. Фиксированный массив - это массив с заданным размером, который в свою очередь определяется количеством элементов. Динамический массив - это массив с переменным размером, т.е. количество элементов может изменяться во время выполнения программы.
Объявление одномерного фиксированного массива:
Dim iString(3) As String
Объявление двухмерного фиксированного массива:
Dim iData(5, 2) As Double
Объявление динамического массива:
Dim iWhatIs() As Integer
При объявлении (описании) динамического массива его размер не указывается. В процессе выполнения программы его размер может изменяться, причём неоднократно. Поэтому динамический массив применяют, если предполагается, что размер массива не будет постоянным.
ReDim - инструкция, которая позволяет изменять динамический массив.
Dim iWhatIs() As Integer
ReDim iWhatIs(5)
ReDim iWhatIs(10)
Элементы массива, которые были созданы ранее, после использования ReDim не сохраняются.
ReDim Preserve - инструкция, которая позволяет изменять динамический массив, с сохранением всех элементов массива.
Dim iWhatIs()
ReDim Preserve iWhatIs(2)
iWhatIs(0) = 1
iWhatIs(1) = 2
iWhatIs(2) = 3
ReDim Preserve iWhatIs(3)
iWhatIs(3) = 4
Номер первого элемента по умолчанию начинается с 0, для того чтобы изменить нумерацию используйте инструкцию Option Base или используйте явное указание номера первого элемента. Инструкцию Option Base необходимо расположить в самом начале модуля VBA.
Номер первого элемента всех массивов начинается с 1:
Option Base 1
Dim iString(3) As String
Dim iData(5, 2) As Double
Объявление фиксированных массивов с явным описанием нижней границы :
Dim iString(1 To 3) As String
Dim iData(1 To 5, 1 To 2) As Double
