Function ListeLesReferences()
'Philippe Pons, mpfe
Dim ref As Object 'variable objet pointant sur une référence
Dim colRef As Object 'variable objet pointant sur la collection des références
Set colRef = ThisWorkbook.VBProject.References 'c'est ici que se situe
'l'astuce pour référencer
'la collection
'dénombre les références existantes
Debug.Print colRef.Count
'Liste les noms des réferences, la validité du lien
'et le chemin du fichier associé
For Each ref In colRef
Debug.Print ref.Name & vbTab & ref.IsBroken & vbTab & ref.FullPath & vbTab & ref.GUID & vbTab & ref.minor & vbTab & ref.major
Next ref
'assure que la librairie de type de DAO 3.5 est déclarée
'il faut intercepter l'erreur générée si la référence existe déja
' On Error Resume Next
' colRef.AddFromFile _
' "C:\PROGRAM FILES\FICHIERS COMMUNS\MICROSOFT SHARED\DAO\DAO350.DLL"
End Function
exemple pour ajouter une reference
Sub AjoutRef() 'Attention reference pour Mac
Dim Ref
For Each Ref In ActiveWorkbook.VBProject.References
If Ref.GUID = "{0002E157-0000-0000-C000-000000000046}" Then Exit Sub
Next
On Error GoTo fin
ActiveWorkbook.VBProject.References.AddFromGuid _
GUID:="{0002E157-0000-0000-C000-000000000046}", Major:=5, Minor:=0
Exit Sub
fin: On Error GoTo 0: MsgBox "Impossible d'active la référence" & vbLf & _
"Microsoft Visual Basic for Applications Extensibility": End
End Sub