[2007]Pb ajout référence par le code
Bonjour à tous,
J'utilise le code de la FAQ pour contrôler les références d'une appli tournant en runtime 2007.(Lister, ajouter, supprimer).
Executé en mde ou sur un poste en runtime (xp ou vista) l'ajout me génère une erreur
Citation:
Requested type library or wizard is not a VBA project
.
La liste peut aussi me générer ce genre d'erreur (sur le poste xp).
La compilation ne donne pas d'erreur.
Code:
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 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
| Private Sub cmdListerReferences_Click()
GetReferences
End Sub
Function GetReferences()
Dim Ref As Reference
On Error GoTo Err_GetReferences
For Each Ref In Application.References
MsgBox "Référence : " & Ref.Name & " - Version : " & Ref.Major & "." _
& Ref.Minor & " - FullPath : " & Ref.FullPath, , "xxx"
Debug.Print "Réf : " & Ref.Name & " - Version : " & Ref.Major & "." _
& Ref.Minor & " - FullPath : " & Ref.FullPath
Next Ref
Exit_GetReferences:
Exit Function
Err_GetReferences:
MsgBox "Erreur Form_frmAccueil_GetReferences n°: " & Err.Number & vbCrLf & Err.Description, , "xxx"
Resume Exit_GetReferences
End Function
Private Sub cmdSupprimerReference_Click()
SupprimerReferences
End Sub
Public Sub SupprimerReferences()
Dim Ref As Reference, NomRef As String
On Error GoTo Err_SupprimerReferences
NomRef = InputBox("Nom de la référence", "xxx - Suppression d'une référence")
Debug.Print "Nom "; NomRef
If ExisteReference(NomRef) Then
Set Ref = References(NomRef)
References.Remove Ref
MsgBox "Référence supprimée", , "xxx - Suppression d'une référence"
Else
MsgBox "La référence n'a pas été trouvée", , "xxx - Suppression d'une référence"
End If
MsgBox "Il y a " & Application.References.Count & " références cochées.", , "xxx"
For Each Ref In References
If Ref.IsBroken Then
MsgBox "GUID des références rompues:" & Ref.GUID, , "xxx"
End If
Next Ref
Exit_SupprimerReferences:
Exit Sub
Err_SupprimerReferences:
MsgBox "Erreur Form_frmAccueil_SupprimerReferences n°: " & Err.Number & vbCrLf & Err.Description, , "xxx"
Resume Exit_SupprimerReferences
End Sub
Private Function ExisteReference(NomRef As String) As Boolean
Dim Ref As Reference
ExisteReference = False
For Each Ref In Application.References
If Ref.Name = NomRef Then
ExisteReference = True
End If
Next Ref
End Function
Private Sub cmdAjouterReferences_Click()
On Error GoTo Err_cmdAjouterReferences_Click
AjouterReferences
Exit_cmdAjouterReferences_Click:
Exit Sub
Err_cmdAjouterReferences_Click:
MsgBox "Erreur Form_frmAccueil_cmdAjouterReferences_Click n°: " & Err.Number & vbCrLf & Err.Description, , "xxx"
Resume Exit_cmdAjouterReferences_Click
End Sub
Private Sub AjouterReferences()
Dim CheminReference As String
CheminReference = OuvrirDialogueFichier()
Debug.Print "CheminReference " & CheminReference
AjouterReference (CheminReference)
'AjouterReference ("C:\Program Files\Microsoft Office\Office12\VVIEWER.DLL")
'AjouterReference ("C:\Windows\system32\scrrun.dll")
End Sub
Private Sub AjouterReference(CheminRef As String)
References.AddFromFile (CheminRef)
MsgBox "Référence ajoutée : " & CheminRef, , "xxx"
End Sub |
Auriez-vous une idée?
Merci de votre attention