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
|
Dim vbpName As String
Dim i As Integer
Dim VarRefOk As Boolean
On Error Resume Next
'on contrôle si l'option "Faire confiance au projet Visual Basic" (Outils, macros, sécurité, éditeurs approuvés) est bien cochée (sinon plantage sur la ligne "Application.VBE.MainWindow.Visible = False")
vbpName = ThisWorkbook.VBProject.Name
If vbpName = vbNullString Then
varMsg = "Please go to : Tools, Macro, Security, Trusted Publishers, check 'Trust access to Visual Basic Project', and double-click again."
rpns = MsgBox(varMsg, vbInformation + vbOKOnly, cntTitre)
Exit Sub
End If
On Error Resume Next
'on teste si la référence "Microsoft Visual Basic for Applications Extensibility 5.3" est bien cochée, sinon sur certains pc, l'instruction "ThisWorkbook.VBProject.VBComponents(30).Activate" ne sera pas effectuée
VarRefOk = False
With ThisWorkbook.VBProject.References
For i = 1 To .Count
If .Item(i).GUID = "{0002E157-0000-0000-C000-000000000046}" Then
VarRefOk = True
End If
Next
End With
'si elle n'est pas cochée on la coche
If VarRefOk = False Then
On Error Resume Next
ActiveWorkbook.VBProject.References.AddFromGuid _
"{0002E157-0000-0000-C000-000000000046}", 5, 3
End If |
Partager