Partage via


Méthode Application.CurrentDb (Access)

La méthode CurrentDb renvoie une variable objet de type Database qui représente la base de données actuellement ouverte dans la fenêtre Microsoft Access.

Syntaxe

expression. CurrentDb

expressionUne variable qui représente un objetApplication.

Valeur renvoyée

Database

Remarques

Remarque

Dans Microsoft Access, la méthode CurrentDb établit une référence masquée à la bibliothèque d’objets Microsoft Office 12.0 Access Connectivity Engine dans une base de données Microsoft Access.

Pour manipuler la structure de votre base de données et ses données à partir de Visual Basic, vous devez utiliser DAO (Data Access Objects). La méthode CurrentDb permet d’accéder à la base de données actuelle dans Visual Basic sans en connaître le nom. Une fois que vous disposez d’une variable qui pointe vers la base de données active, vous pouvez également accéder à d’autres objets et collections et les manipuler dans la hiérarchie DAO.

Utilisez la méthode CurrentDb pour créer plusieurs variables objet qui font référence à la base de données active. Dans l’exemple suivant, les variables dbsA et dbsB font référence à la base de données active :

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

Remarque

Dans les versions précédentes de Microsoft Access, vous avez peut-être utilisé la syntaxe DBEngine.Workspaces(0).Databases(0)ou DBEngine(0)(0)pour retourner un pointeur vers la base de données active. Dans Microsoft Access 2000 et versions ultérieures, vous devez utiliser la méthode CurrentDb à la place. La méthode CurrentDb crée une autre instance de la base de données active, tandis que la DBEngine(0)(0)syntaxe fait référence à la copie ouverte de la base de données active. La méthode CurrentDb permet de créer plusieurs variables de type Database faisant référence à la base de données actuelle. Microsoft Access prend toujours en charge la DBEngine(0)(0)syntaxe, mais vous devez envisager d’apporter cette modification à votre code afin d’éviter d’éventuels conflits dans une base de données multi-utilisateur.

Si vous devez travailler avec une autre base de données en même temps que la base de données active est ouverte dans la fenêtre Microsoft Access, utilisez la méthode OpenDatabase d’un objet Workspace . La méthode OpenDatabase n’ouvre pas réellement la deuxième base de données dans la fenêtre Microsoft Access ; elle renvoie simplement une variable Database représentant la deuxième base de données. L’exemple suivant permet de renvoyer un curseur sur la base de données actuelle et une base de données nommée Contacts.mdb :

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

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.