- •Объекты Microsoft Access
- •Объект Application
- •Объект Application, примеры
- •Объект Collection
- •Пример использования объекта Collection
- •Объект Control
- •Семейство Controls
- •Объект Control, семейство Controls, пример
- •Объект Debug
- •Объект DoCmd
- •Объект DoCmd, пример
- •Объект Err
- •Пример использования объекта Err
- •Объект Form
- •Семейство Forms
- •Объект Form, семейство Forms, примеры
- •Семейство ItemsSelected
- •Семейство ItemsSelected, примеры
- •Объект Module
- •Семейство Modules
- •Объект Module, семейство Modules, пример
- •Объект Page
- •Семейство Pages
- •Объект Page, семейство Pages, пример
- •Объект Reference
- •Семейство References
- •Объект Reference, семейство References, пример
- •Объект Report
- •Семейство Reports
- •Объект Report, семейство Reports, примеры
- •Объект Screen
- •Объект Screen, пример
Объект Module
Объект Module указывает на стандартный модуль или на модуль класса.
В Microsoft Access существуют модули классов, не связанные с объектами, а также модули форм и модули отчетов, связанные с формами и отчетами. Для определения типа объекта Module (стандартный или модуль класса) служит его свойство Type.
Семейство Modules содержит в себе все открытые объекты Module не зависимо от их типа, что дает возможность их группировки и разделения.
Для получения ссылки на отдельный стандартный объект Module или модуль класса в семействе Modules используются следующие синтаксические конструкции.
Синтаксис |
Описание |
Modules!имяМодуля |
Аргумент имяМодуля является названием объекта Module. |
Modules("имяМодуля") |
Аргумент имяМодуля является названием объекта Module. |
Modules(индекс) |
Аргумент индекс является позицией объекта в семействе. |
Следующий пример возвращает ссылку на стандартный объект Module и присваивает ее переменному объекту:
Dim mdl As Module
Set mdl = Modules![Utility Functions]
Необходимо заметить, что скобки, обрамляющие имя объекта Module необходимы только в том случае, когда это имя включает в себя пробелы.
Следующий пример возвращает ссылку на объект Module формы и присваивает ее переменному объекту:
Dim mdl As Module
Set mdl = Modules!Form_Employees
Для указания на особый модуль формы или отчета также возможно использование свойства Module объектов Form или Report:
Forms!имяФорым.Module
Следующий пример возвращает ссылку на объект Module, связанный со служащими, и присваивает ее переменному объекту:
Dim mdl As Module
Set mdl = Forms!Служащие.Module
После получения ссылки на объект Module возможно задание и считывание его свойств и вызов его методов.
Семейство Modules
Семейство Modules содержит в себе все открытые в базе данных Microsoft Access стандартные модули и модули классов.
Для нумерации объектов семейства Modules используется конструкция For Each...Next. Для определения наличия отдельного объекта Module в стандартном модуле или в модуле класса служит свойство Type объекта Module.
Семейство Modules содержит в себе все открытые модули не зависимо от того, откомпилированы они или нет, приостановлено их выполнение, или они выполняются.
Семейство Modules принадлежит к объекту Application Microsoft Access.
Объекты Module семейства Modules пронумерованы начиная с 0.
Объект Module, семейство Modules, пример
Пример возвращает ссылку на объект Module семейства Modules и возвращает число строк программы в модуле:
Function LinesInModule (strModuleName As String) As Long
Dim mdl As Module
On Error GoTo Error_LinesInModule
' Открывает модуль.
DoCmd.OpenModule strModuleName
' Возвращает указатель на объект Module.
Set mdl = Modules(strModuleName)
' Возвращает число строк в модуле.
LinesInModule = mdl.CountOfLines
Exit_LinesInModule:
Exit Function
Error_LinesInModule:
MsgBox Err & ": " & Err.Description
' В случае ошибки возвращает -1.
LinesInModule = -1
Resume Exit_LinesInModule
End Function