- •1. Операторы, процедуры, типы данных vba
- •Основные типы данных в vba
- •Преобразование типов данных
- •Is (оператор)
- •Функция IsArray
- •IsArray (Имя переменной)
- •IsDate (функция)
- •IsEmpty (функция)
- •IsError( функция)
- •IsMissing(функция)
- •IsNull (функция)
- •IsNumeric (функция)
- •IsNumeric(выражение)
- •IsObject(функция)
- •2. Работа с объектами
- •3. Применение процедур vba
- •Модель программирования в Access
- •Типы процедур
- •Поле со списком
- •Вызов процедур
- •Запуск процедур-функций
- •Запуск процедур-подпрограмм
- •4. Операторы vba
- •Логические операторы Логические операторы
- •Некоторые функции в vba
- •5. Объявление переменных, констант в vba
- •Создание пользовательских типов данных
- •Dim c As клиент
- •Cоздание массивов постоянной длины
- •Cоздание массива из списка значений
- •Создание динамических массивов
- •6.Организация ввода-вывода данных с помощью функций InputBox и MsgBox
- •7. Управляющие структуры
- •Структура If … Then
- •Структура If … Then … Else
- •Вторая группа операторов]
- •Второй блок операторов]
- •Алгоритм
- •Переход по метке
- •10: Программный код Cтруктура Select Case
- •8. Циклы в vba Cтруктура For ….Next
- •Операторы
- •Структура For Each … Next
- •Структура Do… Loop
- •Структура Do While … Loop
- •Структура Do ….While Loop
- •Cтруктуры Do Until … Loop и Do … Loop Until
- •9. Операторы Exit
- •Функции для работы со строковыми переменными
- •11. Классические задачи программирования: сортировка, поиск
- •If IsNull(массив(X)) Then Exit Function
- •12. Управление базами данных
- •Основные понятия базы данных
- •Установка значений свойств
- •Считывание свойств
- •Вызов методов
- •Объект.Метод
- •Присваивание значений возвращаемых из методов
- •13. Объект Database –база данных
- •Cвойства объекта Database
- •Методы объекта Database
- •14. Объект TableDef
- •Свойства объекта TableDef
- •Методы объекта TableDef
- •Использование свойства Fields объекта TableDef
- •Использование свойства TableDefs объекта Database
- •15. Объект Form –экранная форма Свойства объекта Form
- •Применение некоторых свойств oбъекта Form Свойство Me
- •Cвойство ActiveControl
- •Свойство CurrentRecord
- •Свойство Visible
- •Свойства OrderBy и OrderByOn
- •Методы объекта Form
- •Список и поле со списком
- •Глава 16. Объект DoCmd и его методы
- •Глава 17. Объект Recordset
- •Свойства объекта Recordset
- •Свойства bof и eof
- •Создание объекта Recordset
- •Глава 18. Применение объекта Debug
- •Глава 19. Применение свойства RecordCount
- •Применение свойства Fields
- •Применение метода GetRows объекта Recordset
- •Глава 21. Объекты QueryDef
- •Свойства объектов QueryDef
- •Использование метода Execute
- •Глава 22. Применение языка sql
- •Использование выражения select
- •Простые формы select
- •Фильтрация данных с помощью предложения where
- •Сортировка данных
- •Объединение таблиц
- •Глава 23. Объект Report События
- •Некоторые свойства объекта Report
- •Методы объекта Report
- •Применение свойств объекта Report
- •Глава 24. Настройка пользовательского интерфейса
- •Глава 25. Создание и изменение панелей команд
- •Глава 26. Создание и удаление контекстных меню
- •Приложение
- •Этапы реализации задачи:
- •If IsNull(.Fields!цена) Then Exit Do
8. Циклы в vba Cтруктура For ….Next
Если заранее известно, сколько раз нужно выполнить операторы в цикле, то можно воспользоваться структурой For …Next
Cинтаксис
For счётчик=начальное_значение to конечное_значение [step приращение]
Операторы
Next [счётчик]
Переменная-счётчик запоминает число повторов, и указываются начальное и конечное значения счётчика. Эти значения и приращение могут быть числовыми значениями или выражениями.
Пример
Вычислить значение функции у=sin(x) при x=2,4,6,8,10 и вывести на экран.
Dim x As Integer, y As Single
For x = 2 To 10 Step 2
y = Sin(x)
MsgBox Str(y)
Next x
Если приращение отрицательно, то цикл начинает работу так же, как и при положительном и выполняет одно из двух действий:
Если значение счётчика < конечного значения, то выход из цикла.
Если значение счётчика > конечного значения или равно ему, то выполняются операторы цикла и счётчик уменьшается на значение приращения.
Структура For Each … Next
Этот цикл похож на предыдущий, но в нём блок операторов повторяется не указанное число раз, а для каждого элемента массива или для каждого объекта семейства.
С помощью этого цикла можно перебирать все элементы массива или семейства, даже не зная, каково их число.
Синтаксис
For Each элемент In группа
Операторы
Next [элемент]
Группа-это имя семейства объектов или массива. Для семейства объектов элемент-это переменная, представляющая объект-член семейства. Она должна иметь тип Variant или Object. Перебор элементов выполняется быстрее, так как запоминается номер позиции элемента.
Структура Do… Loop
Структура Do… Loop позволяет повторять группу операторов неопределённое число операторов. Цикл завершается по условию. Условие должно быть выражением, принимающим значения True или False. Существуют четыре разновидности циклов
Do… Loop.
Структура Do While … Loop
Cинтаксис
Do While условие
операторы
Loop
Если условие принимает значение False, то осуществляется выход из цикла, в противном случае работают операторы цикла.
Начало цикла
Условие TrueОператоры
False
Конец цикла
Структура Do ….While Loop
Cинтаксис
Do
Операторы
Loop While условие
Если условие принимает значение False, то осуществляется выход из цикла, в противном случае работают операторы цикла. Отличие от предыдущего в том, что эта структура при любом значении условия отработает всегда хотя бы один раз.
Начало цикла
Операторы
Условие True
False
Конец цикла