- •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
Применение метода GetRows объекта Recordset
Пример:
Скопировать в двумерный массив первые 3 записи из таблицы «Товары» и вывести их в окно Immediate.
Private Sub Кнопка0_Click()
Dim basa As Database, nabor As Recordset, Массив As Variant, i, j As Byte
Set basa = CurrentDb
Set nabor = basa.OpenRecordset("Товары", dbOpenSnapshot)
With nabor
Массив =.GetRows(3) 'копируем 3 записи в массив
End With
For i = 0 To UBound(Массив, 2)
For j = 0 To UBound(Массив, 1)
Debug.Print Массив(j, i) & " ";
Next j
Debug.Print vbch
Next i
End Sub
Результат:
Глава 21. Объекты QueryDef
Объект QueryDef представляют собой хранимое определение запроса. Он не содержит данных из таблиц, выбираемых по запросу.
Свойства объектов QueryDef
Свойство |
Описание |
DateCreated
Connect
LastUpdated
Name
RecordsAffected
Type Updatable |
Возвращает дату и время создания хранимого запроса. Содержит информацию об источнике связанной таблицы. Возвращает дату и время последнего изменения хранимого запроса. Идентифицирует объект QueryDef. Если присвоить свойству Name строку нулевой длины (“ “), будет создан временный запрос. Возвращает число записей, затронутых при последнем запуске метода Execute в объекте QueryDef. Определяет тип запроса. Определяет, можно ли вносить изменения в определение запроса. |
|
|
Методы объекта QueryDef
Метод |
Описание |
Close CreateProperty Execute
OpenRecordset |
Закрывает открытый объект QueryDef. Создаёт новый пользовательский объект Property. Выполняет запрос на действие для указанного объекта QueryDef. Так как, такие запросы не возвращают записи, метод Execute ничего не возвращает. Создаёт новый объект Recordset на основе объекта QueryDef. |
Использование метода Execute
Метод Execute можно запускать хранимые запросы на действие.
Синтаксис метода:
Объект.Execute источник, параметры,
где источник – имя хранимого запроса на действие в строковом формате,
параметры - необязательная целая константа, которая определяет характеристики запроса.
DbDenyWrite - запрещает другим пользователем доступ на запись.
dbInconsistent - выполняет несовместимые обновления.
dbConsistent -выполняет совместимые обновления
dbFailError - отменяет изменения при возникновении ошибок.
dbSeeChanges - генерирует ошибку в случае, если другой пользователь
изменяет редактируемые данные.
Примечание:
Если в момент вызова метода Execute для запроса на обновление таблицы или удаление какие-либо записи блокированы, то метод не обновит и не удалит блокированной записи. Но ошибка не вызовется, поэтому во избежание нарушения целостности данных нужно устанавливать параметр dbFailError.