Re : Référence manquante avec Office 2010 pour PC utilisant Outlook 2007
Bruno,
il y a quelque temps , j'ai utilisé ceci, bon cela implique sauvegarder sans la référence pour éviter l'erreur.
Regarde si cela peux faire l'affaire...
Function VérifieBibli()
Dim Ordre As Integer
Dim NbBiblio As Integer, Tourne As Integer
Dim Nom As String, Chemin As String
Dim Retour, Résultat As Boolean
NbBiblio = 5
Résultat = True
For Tourne = 1 To NbBiblio
Select Case Tourne
Case 1: Nom = "VBA"
Chemin = "C:\Program Files\Common Files\Microsoft Shared\VBA\VBA6\VBE6.DLL"
Case 2: Nom = "Office"
Chemin = "C:\Program Files\Common Files\Microsoft Shared\OFFICE11\MSO.DLL"
Case 3: Nom = "Excel"
Chemin = "C:\Program Files\MsOffice\OFFICE11\EXCEL.EXE"
Case 4: Nom = "stdole"
Chemin = "C:\SYS\WINDOWS\System32\stdole2.tlb"
Case 5: Nom = "MSForms"
Chemin = "C:\SYS\WINDOWS\System32\FM20.DLL"
Case Else: Stop
End Select
Retour = RéférenceCochée(Nom)
If Dir(Chemin) = "" Then
MsgBox "Bibliothèque : " & Nom & " introuvable ?", , "Processus arrêté"
Résultat = False
Exit Function
End If
On Error Resume Next
If Retour = False Then ThisWorkbook.VBProject.References.AddFromFile Chemin
On Error GoTo 0
Next Tourne
VérifieBibli = Retour
End Function
Function RéférenceCochée(Nom) As Boolean
Dim i As Integer
Dim NbreRef As Integer
Dim NomRef(20, 2) As String
Dim Indexe As Integer
Dim Référence As Boolean
NbreRef = Application.VBE.ActiveVBProject.References.Count
Indexe = 1
Référence = False
For i = 1 To NbreRef
NomRef(Indexe, 1) = Application.VBE.ActiveVBProject.References(i).Name
NomRef(Indexe, 2) = Application.VBE.ActiveVBProject.References(i).fullpath
If Nom = NomRef(Indexe, 1) Then Référence = True: Exit For
Indexe = Indexe + 1
Next i
RéférenceCochée = Référence
End Function
[/CODE]