Liste des références
On m’a posé la question récemment : « Quelle est la liste des références à cocher dans Visual Basic Editor, selon la version d’Access ? ».
MISE A JOUR ACCESS 2013
Rappel
Pour en savoir plus sur les références, consultez tout d’abord cet article du blog. Si vous avez lu l’article, vous en déduirez qu’il n’y a pas de liste type des références à cocher : tout dépend de ce que fait votre code Visual Basic, et des objets programmables dont il a besoin.
Maintenant, la question intéressera sans doute les personnes qui ont fait quelques tests rapides, en cochant un peu de tout, pour essayer, et qui souhaiteraient revenir à une configuration standard. En pratique, pour obtenir la liste des références par défaut, il suffit de :
- Démarrer votre version d’Access.
- Construire une base vide.
- Démarrer Visual Basic Editor (par les touches
[Alt]
+[F11]
). - Cliquer sur le menu Outils / Références.
Ce qui suit récapitule la liste pour les principales versions d’Access. Ça vous évitera de le faire manuellement !
Access 2013 – Fichier ACCDB
Voici la liste des références par défaut pour un fichier Access 2013, format ACCDB :
Voici les chemins des bibliothèques :
--- Access Version: 15.0 Project Type: MDB/ACCDB Engine Version: 15.0 --- VBA FullPath -> C:\PROGRA~1\COMMON~1\MICROS~1\VBA\VBA7.1\VBE7.DLL Version -> 4.2 Access FullPath -> C:\Program Files\Microsoft Office\Office15\MSACC.OLB Version -> 9.0 stdole FullPath -> C:\Windows\System32\stdole2.tlb Version -> 2.0 DAO FullPath -> C:\Program Files\Common Files\Microsoft Shared\OFFICE15\ACEDAO.DLL Version -> 12.0
Access 2010 – Fichier ACCDB
Voici la liste des références par défaut pour un fichier Access 2010, format ACCDB :
Si les chemins de chaque bibliothèque vous intéressent, les voici, dans le cadre d’une installation standard (vous trouverez plus bas dans l’article le détail des informations affichées).
--- Access Version: 14.0 Project Type: MDB/ACCDB Engine Version: 14.0 --- VBA FullPath -> C:\PROGRA~1\COMMON~1\MICROS~1\VBA\VBA7\VBE7.DLL Version -> 4.1 Access FullPath -> C:\Program Files\Microsoft Office 2010\Office14\MSACC.OLB Version -> 9.0 stdole FullPath -> C:\Windows\system32\stdole2.tlb Version -> 2.0 DAO FullPath -> C:\Program Files\Common Files\Microsoft Shared\OFFICE14\ACEDAO.DLL Version -> 12.0
Access 2010 – Fichier MDB
Voici la liste des références par défaut pour un fichier Access 2010, format MDB :
Voici les chemins des bibliothèques :
--- Access Version: 14.0 Project Type: MDB/ACCDB Engine Version: 14.0 --- VBA FullPath -> C:\PROGRA~1\COMMON~1\MICROS~1\VBA\VBA7\VBE7.DLL Version -> 4.1 Access FullPath -> C:\Program Files\Microsoft Office 2010O\ffice14\MSACC.OLB Version -> 9.0 stdole FullPath -> C:\Windows\system32\stdole2.tlb Version -> 2.0 DAO FullPath -> C:\Program Files\Common Files\Microsoft Shared\OFFICE1\4ACEDAO.DLL Version -> 12.0
Access 2007 – Fichier ACCDB
Voici la liste des références par défaut pour un fichier Access 2007, format ACCDB :
Voici également les chemins des bibliothèques :
--- Access Version: 12.0 Project Type: MDB/ACCDB Engine Version: 12.0 --- VBA FullPath -> C:\Program Files\Common Files\Microsoft Shared\VBA\VBA6\VBE6.DLL Version -> 4.0 Access FullPath -> C:\Program Files\Microsoft Office\Office12\MSACC.OLB Version -> 9.0 stdole FullPath -> C:\Windows\system32\stdole2.tlb Version -> 2.0 DAO FullPath -> C:\PROGRA~1\COMMON~1\MICROS~1\OFFICE12\ACEDAO.DLL Version -> 12.0
Access 2007 – Fichier MDB
Voici la liste des références par défaut pour un fichier Access 2007, format MDB :
Voici également les chemins des bibliothèques :
--- Access Version: 12.0 Project Type: MDB/ACCDB Engine Version: 12.0 --- VBA FullPath -> C:\Program Files\Common Files\Microsoft Shared\VBA\VBA6\VBE6.DLL Version -> 4.0 Access FullPath -> C:\Program Files\Microsoft Office\Office12\MSACC.OLB Version -> 9.0 stdole FullPath -> C:\Windows\system32\stdole2.tlb Version -> 2.0 DAO FullPath -> C:\Program Files\Common Files\Microsoft Shared\DAO\dao360.dll Version -> 5.0
Access 2007 – Fichier ADP
Voici la liste des références par défaut pour un fichier Access 2007, format ADP :
Chemins des bibliothèques :
VBA FullPath -> C:\Program Files\Common Files\Microsoft Shared\VBA\VBA6\VBE6.DLL Version -> 4.0 Access FullPath -> C:\Program Files\Microsoft Office\Office12\MSACC.OLB Version -> 9.0 stdole FullPath -> C:\Windows\system32\stdole2.tlb Version -> 2.0 ADODB FullPath -> C:\Program Files\Common Files\System\ado\msado25.tlb Version -> 2.5
Access 2003 – Fichier MDB
Voici la liste des références par défaut pour un fichier Access 2003, format MDB :
Chemins des bibliothèques :
--- Access Version: 11.0 Project Type: MDB/ACCDB Engine Version: 3.6 --- VBA FullPath -> C:\Program Files\Fichiers communs\Microsoft Shared\VBA\VBA6 VBE6.DLL Version -> 4.0 Access FullPath -> C:\Program Files\Microsoft Office 2003\OFFICE11\MSACC.OLB Version -> 9.0 stdole FullPath -> C:\WINDOWS\system32\STDOLE2.TLB Version -> 2.0 DAO FullPath -> C:\Program Files\Fichiers communs\Microsoft SharedDAOdao360.dll Version -> 5.0 ADODB FullPath -> C:\Program Files\Fichiers communs\System\ado\msado21.tlb Version -> 2.1
Access 2003 – Fichier ADP
Voici la liste des références par défaut pour un fichier Access 2003, format ADP :
Chemins des bibliothèques :
--- Access Version: 11.0 Project Type: ADP Engine Version: 3.6 --- VBA FullPath -> C:\Program Files\Fichiers communs\Microsoft Shared\VBA\VBA6\VBE6.DLL Version -> 4.0 Access FullPath -> C:\Program Files\Microsoft Office 2003\OFFICE11\MSACC.OLB Version -> 9.0 stdole FullPath -> C:\WINDOWS\system32\STDOLE2.TLB Version -> 2.0 ADODB FullPath -> C:\Program Files\Fichiers communs\System\ado\msado21.tlb Version -> 2.1
Access 2000 – Fichier MDB
Voici la liste des références par défaut pour un fichier Access 2000, format MDB :
Chemin des bibliothèques :
--- Access Version: 9.0 Project Type: MDB/ACCDB Engine Version: 3.6 --- VBA FullPath -> C:\Program Files\Fichiers communs\Microsoft Shared\VBA\VBA6\VBE6.DLL Version -> 4.0 Access FullPath -> C:\Program Files\Microsoft Office 2000\Office\MSACC9.OLB Version -> 9.0 stdole FullPath -> C:\WINDOWS\SYSTEM\STDOLE2.TLB Version -> 2.0 ADODB FullPath -> C:\PROGRAM FILES\FICHIERS COMMUNS\SYSTEM\ADO\msado15.dll Version -> 2.1
Lister les références
Pour lister les références, vous pouvez utiliser le programme ci-dessous (à recopier dans un module standard, comme d’habitude) :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
' --- ' LISTE DES REFERENCES ' --- ' Sub ReferenceList(Optional ByVal blnFullDetails As Boolean = False) Dim ref As Access.Reference ' Version d'Access Debug.Print "---" Debug.Print "Access Version: " & SysCmd(acSysCmdAccessVer) Debug.Print "Project Type: " & ProjectTypeLabel(CurrentProject.ProjectType) Debug.Print "Engine Version: " & Access.DBEngine.Version Debug.Print "---" Debug.Print For Each ref In Access.References Debug.Print ref.Name Debug.Print " FullPath -> " & ref.FullPath Debug.Print " Version -> " & ref.Major & "." & ref.Minor If blnFullDetails Then Debug.Print " BuiltIn -> " & ref.BuiltIn Debug.Print " Guid -> " & ref.Guid Debug.Print " Broken -> " & ref.IsBroken Debug.Print " Kind -> " & ref.Kind End If Debug.Print Next End Sub ' --- ' TYPE DE PROJET, EN CLAIR ' --- ' Function ProjectTypeLabel(ByVal prj As AcProjectType) As String Select Case prj Case AcProjectType.acADP ProjectTypeLabel = "ADP" Case AcProjectType.acMDB ProjectTypeLabel = "MDB/ACCDB" Case Else ProjectTypeLabel = "???" End Select End Function |
Et pour tester le programme :
- Faites apparaître la fenêtre Exécution (
[CTRL]
+G
). - Tapez dans cette fenêtre :
ReferenceList
puis validez par[Entrée]
. - Pour obtenir plus de détails, tapez plutôt :
ReferenceList True
La liste obtenue donne :
- la version d’Access
- le type de projet (MDB/ACCDB ou ADP)
- la version du moteur de base de données
Et pour chaque bibliothèque :
- le chemin complet de la bibliothèque
- la version de la bibliothèque
- le fait que la bibliothèque soit système (
BuiltIn
) ou non. - l’identifiant unique (Guid) de la bibliothèque
- le fait que la bibliothèque soit manquante ou non (
IsBroken
). - le type de bibliothèque (0 pour une bibliothèque de type, TypeLib, et 1 pour une bibliothèque de projet VBA). Le deuxième cas peut apparaître lorsque vous liez une base de données à une autre, sous forme de référence.
Publication originale le 30/06/2009
Modification le 20/06/2012
Bonjour,
je souhaite exécuter une base de donnée crée sur Acces 2003 sur un Acces 2010 mais au moment du lancement, celui ci me dit « Erreur de compilation: Projet ou bibliothèque introuvable »
Si vous pouviez m’éclairer ma lanterne sur pourquoi cette erreur apparait je vous en serez très reconnaissant
Cdt
Pierre
Il s’agit effectivement d’un problème de références manquantes. Cet autre article du blog devrait aider. Le tout étant d’identifier les bibliothèques qui étaient cochées sur le 2003 et qu’il faut adapter.
Bonjour,
fonction très pratique, mais j’ai un bug. Le programme se déroule bien jusqu’à la bibliothèque « Microsoft Windows Common Controls-2 6.0 » qui utilise le fichier c:\windows\SysWow64\mscomct2.ocx.
La fonction me retourne une erreur d’exécution « la méthode ‘fullpath’ de l’objet Reference a échoué.
Pourtant cette bibliothèque est correctement référencée et fonctionne.
Je suis sous access 2013 – 64bits
Est-ce que ça peut être un problème de droits sur la machine ?
Sinon, pour faire brutal, le rajout de cette ligne (par exemple avant le premier Debug.Print) évitera l’erreur d’exécution :
Bien entendu, c’est ce que j’ai fait. Je voulais simplement indiquer que sur cette référence en OCX la méthode « path » plantait. Peut-être effectivement pour un problème de droits sur SysWow64.
Excellent article mais il nécessiterait d’être mis à jour pour Access 2013. Avec Access 2000 que j’utilisais auparavant je n’avais aucun problème. Pour Access 2013 j’ai choisi les bibliothèques suivantes comme je le faisais précédemment, à savoir :
-Visual Basic for Applications
-Microsoft Access 15.0 Object Library
-OLE Automation
-Microsoft DAO Object Library
-Microsoft ActiveXData Objects Recordsets 6.0 Library
-Microsoft ADO Ext. 2.8 for DLL and Security
Dans les versions précédentes quand j’écrivais par exemple :
Private Cnn As New
on me proposait ADODB et je n’avais plus qu’à sélectionner Connection ce qui me donnait l’instruction :
Private Cnn As New ADODB.Connection
Ce n’est plus le cas avec ma nouvelle version d’Access : je n’obtiens aucune proposition. Je pense que cela est dû à un problème de bibliothèques que je ne maîtrise pas.
Merci pour les explications et le dépannage.
J’ai mis à jour l’article pour Access 2013.
Pour utiliser ADODB, c’est une autre référence qu’il faut : Microsoft ActiveX Data Objects x.y Library (sans le « Recordsets »). Et ça fonctionnera comme dans les versions précédentes.
Benoît > Content que ça puisse dépanner. 🙂
Bonjour,
Merci beaucoup pour ce tuto. Je développe des applis en VBA (EXCEL/WORD/ACCESS) et je cherche régulièrement les références à sélectionner…
Cdt,
Benoît RIVIERE
jacques > Le nom en clair n’est pas exposé par la classe
Reference
. Ça veut dire qu’il faut le trouver ailleurs. Je n’ai pas cherché en détail, mais il faut sans doute passer par des outils spécifiques, ou interroger en direct la base de registre (le nom est donné sous la brancheTypeLib
).Bonjour,
Comment faire apparaitre dans la fenêtre exécution le nom en clair de la référence ?
Exemple:
Nom : Visual Basic For Applications
FullPath : C:Programe File
Version : 9
Salutations
J’ai pris connaissance de votre article et vous remercie beaucoup pour la clarté de votre exposé. Il va m’aider car outre Access 2003 et 2007 (et son VBA), je « fais » aussi du VB6.0, du VB.net, du Basic 2005 et 2008. Il y a de quoi parfois s’y perdre.
Encore merci et à bientôt.
Laurent.