Поделиться через


Метод Application.CurrentDb (Access)

Метод CurrentDb возвращает объектную переменную типа Database , которая представляет базу данных, открытую в окне Microsoft Access.

Синтаксис

expression. CurrentDb

выражение: переменная, представляющая объект Application.

Возвращаемое значение

База данных

Комментарии

Примечание.

В Microsoft Access метод CurrentDb устанавливает скрытую ссылку на библиотеку объектов microsoft Office 12.0 Access Connectivity Engine в базе данных Microsoft Access.

Чтобы управлять структурой базы данных и ее данными из Visual Basic, необходимо использовать объекты доступа к данным (DAO). Метод CurrentDb позволяет получить доступ к текущей базе данных из кода Visual Basic без необходимости знать имя базы данных. После получения переменной, указывающей на текущую базу данных, вы также можете обращаться к другим объектам и коллекциям в иерархии DAO и управлять ими.

Используйте метод CurrentDb для создания нескольких объектных переменных, ссылающихся на текущую базу данных. В следующем примере переменные dbsA и dbsB оба ссылаются на текущую базу данных:

Dim dbsA As Database, dbsB As Database 
Set dbsA = CurrentDb 
Set dbsB = CurrentDb

Примечание.

В предыдущих версиях Microsoft Access вы могли использовать синтаксис DBEngine.Workspaces(0).Databases(0)или DBEngine(0)(0)для возврата указателя на текущую базу данных. В Microsoft Access 2000 и более поздних версиях вместо этого следует использовать метод CurrentDb . Метод CurrentDb создает другой экземпляр текущей базы данных, а DBEngine(0)(0)синтаксис ссылается на открытую копию текущей базы данных. Метод CurrentDb позволяет создать несколько переменных типа Database , ссылающихся на текущую базу данных. Microsoft Access по-прежнему DBEngine(0)(0)поддерживает синтаксис, но рекомендуется внести это изменение в код, чтобы избежать возможных конфликтов в многопользовательской базе данных.

Если необходимо работать с другой базой данных в то же время, когда текущая база данных открыта в окне Microsoft Access, используйте метод OpenDatabase объекта Workspace . Метод OpenDatabase фактически не открывает вторую базу данных в окне Microsoft Access. он просто возвращает переменную Database , представляющую вторую базу данных. В следующем примере возвращается указатель на текущую базу данных и на базу данных Contacts.mdb:

Dim dbsCurrent As Database, dbsContacts As Database 
Set dbsCurrent = CurrentDb 
Set dbsContacts = DBEngine.Workspaces(0).OpenDatabase("Contacts.mdb")

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.