- •1. Макросы и технологии управления запуском пользовательских процедур.
- •2. Основные синтаксические принципы vba. Переменные и константы (область видимости переменных, правила выбора идентификатора)
- •3. Типы данных. Принципы выбора типа данных. Встроенные функции преобразования и проверки типов данных.
- •4. Управляющие конструкции vba. Функции заменители синтаксических конструкций.
- •5. Массивы. Встроенные функции для работы с массивами.
- •Динамические массивы
- •6.Пользовательские функции для массивов рабочего листа Excel.
- •7. Особенности разработки пользовательских функций на vba. Способ передачи параметров.
- •8. Встроенные функции для работы со строковыми и числовыми значениями.
- •9. Встроенные функции для работы с датой и временем.
- •10. Встроенные функции для форматирования данных.
- •11. Классы и объекты на vba.
- •12.Технологии управления приложением и разработка пользовательских событий.
- •13.Технология построения обработчиков событий пользовательских классов. Объявление WithEvents.
- •14. Использование объекта Err и обработка ошибок.
- •15. Разработка шаблона с диалоговым окном для ввода данных. Использование пользовательских форм для управления приложением.
- •16. Использование объектов Range и Selection для управления приложением. Коллекции объектов.
- •17. Word : Объектная модель. Объект Application (свойства, методы)
- •18. Word : коллекция Documents и объект Document
- •19. Объект Bookmark.
- •20. Excel : объектная модель. Объект Application ( свойства, методы ).
- •21. Excel: коллекция WorkBooks и объект WorkSheet
- •22. Коллекция Sheets. Объект WorkSheets (свойства, методы).
- •23. Коллекция QueryTables, объект QueryTable.
- •24. Сводные таблицы.
- •26. Основные этапы разработки приложений в Access
- •27. Access : объектная модель. Объект Application (свойства, методы)
- •28. Объект DoCmd
- •29. Создание пользовательских форм в Access . Свойства, методы, события.
- •30. Отчеты в Access
- •31. Outlook. Объект Application (свойства, методы).
- •32. Outlook. Объект NameSpace.
- •34. Коллeкция Folders.
- •35. Коллекция Items и объекты элементов Outlook
- •36. Система объектов в PowerPoint.
3. Типы данных. Принципы выбора типа данных. Встроенные функции преобразования и проверки типов данных.
Данными называются объекты, обрабатываемые программой. Тип данных определяет размер и диапазон значений данных и операции, которые могут выполняться над данными. Различают числовые, строковые, логические и др. данные
-
BYTE с диапазоном значений 0 …255 и размером 1 байт
-
INTEGER с диапазоном значений от –32768 … 32767 и размеров в 2 байта
-
LONG с целочисленными значениями удвоенной длины и размером 4 байта
-
SINGLE с вещественными значениями и длиной 4 байта
-
DOUBLE с вещественными значениями удвоенной длины размером 8 байт
-
СURRENCY размером 8 байт, денежный тип
-
DECIMAL с десятичным представлением данных в целочисленной или вещественной форме, размером 14 байт
-
STRING строки переменной длины до 2-х млрд. символов
-
STRING число строки фиксированной длины до 65400 символов
-
BOOLEAN со значениями TRUE длиной 2 байта или FALSE
-
DATE от 1.01.100 – до 31.12.9999
-
OBJECT со ссылкой на объект, размером 4 байта
-
VARIANT совместим с данными любого типа за исключением строк фиксированной длины.
4. Управляющие конструкции vba. Функции заменители синтаксических конструкций.
VBA относится к категории языков структурного программирования и позволяет использовать стандартные управляющие структуры, к которым относятся: условный оператор, альтернативная выборка, циклы.
Условный оператор If. Оператор может использоваться в двух нотациях: в виде простой и блочной структур.
Оператор простой структуры имеет следующий формат записи:
If <выражение> Then <оператор>
Логические выражения могут быть построены с помощью стандартных логических функций:
Функция |
Описание |
Функция |
Описание |
Not And Or
|
Инверсия или отрицание Логическое "И" Логическое "ИЛИ"
|
Хог Imp Eqv
|
Исключающее “Или” Импликация Эквивалентность |
Оператор If блочной структуры имеет дополнения:
If <выражение1> Then
<блок операторов 1>
ElseIf <выражение2> Then
<блок операторов2>
ElseIf <выражениеЗ> Then
<блок операторовЗ>
[Else
<блок операторов Else> ]
End If
Оператор выборки Select Case. Данный оператор применяется в том случае, если во всех логических условиях участвует одна и та же величина (переменная):
Select Case <величина>
Case <сравнение1>
<блок операторов 1>
Case <сравнение2>
<блок операторов2>
….
[Case Else
<блок операторов Else> ]
End Select
Выражение для сравнения может быть записано в виде: Case 45 или Case 3, 4, 5, или Case 5 То 12.
Если ни одно из сравнений не является истинным, выполняется блок операторов Else, если блок Else отсутствует, управление передается оператору, следующему за End Select.
Оператор цикла For-Next. Данный оператор относится к категории вычисляемых циклов, когда известно заранее число повторений цикла, заданы начальное, конечное значения и шаг (приращение) изменения начального значения, т.е.:
For <переменная_цикла> = <начало> То <конец> [ Step <щаг> ]
<блок операторов 1 > 'тело цикла
[ Exit For ] ' прекращение цикла
<блок операторов2 > ' повторяется определенное число раз
Next <переменная_цикла>
Цикл Do-Loop. Логически управляемый цикл, оператор Do — начало, оператор Loop — конец цикла; имеет 4 модификации:
1) условие True в начале цикла
Do While <условие>
<блок операторов>
Exit Do
<блок операторов>
Loop
2) условие True в конце цикла
Do
<блок операторов>
Exit Do
<блок операторов>
Loop While <условие>
Цикл выполняется хотя бы один раз, в конце выполняется проверка <условия>.
3) условие False в начале цикла
Do Until <условие>
<блок операторов>
Exit Do
<блок операторов>
Loop
Until указывает, что цикл выполняется до тех пор, пока <условие> не станет истинным. Минимальное число повторений тела цикла — 0.
4) условие False в-конце цикла
Do
<блок операторов>
Exit Do
<блок операторов>
Loop Until <условие>
Условие проверяется в конце, цикл прекращается, когда условие станет истинным.Минимальное число повторений тела цикла—1.
Цикл While-Wend. Данный оператор полностью соответствует структуре Do While - Loop. Отличительной особенностью оператора является невозможность прервать выполнение цикла из тела цикла (Exit Do отсутствует), проверка условия выполняется только в начале цикла.
While <условие>
<блок операторов>
Wend
Цикл For Each. Оператор относится к категории операторов объектного типа, т.е. применяется к массивам (элементам) и наборам объектов. Выполняется фиксированное число раз, число объектов в наборе определяется автоматически. Упорядочение элементов набора — произвольное.
For Each <элемент> In <набор>
<блок операторов>
Exit For
<блок операторов>
Next <элемент>
где <элемент> представляет собой переменную типа Variant, <набор> — определе набор объектов. Для прерывания цикла используется оператор Exit For.
Функции - заменители синтаксических конструкций VBA, функции Choose(), IIF(), Switch()
-
Choose() - принимает число (номер значения) и несколько значений. Возвращает значение, порядковый номер которого соответствует передаваемому числу, указанному первым аргументом функции. После первого аргумента следуют непосредственно выбираемые значения(максимум 30):
-
Choose(2, "Первый", "Второй", "Третий") вернет "Второй"
-
IIF() - расшифровывается как Immediate IF, то есть "Немедленный IF". Представляет из себя упрощенный вариант IF...Then, когда проверяется условие и возвращается одно из двух значений.
-
IIf(n > 10, "Больше десяти", "Меньше или равно десяти")
-
Switch() - принимает неограниченное количество пар типа выражение/значение, проверяет каждое выражения на истинность и возвращает значение для первого выражения, которое оказалось истинным:
-
Dim sNumber As String, lNumber As Long sNumber= Switch(lNumber = 1, "Один", lNumber = 2, "Два", lNumber= 3, "Три")