Désactiver Les Références Projets VBA par VBA

Lone-wolf

XLDnaute Barbatruc
Bonsoir le Forum,

Il est vrai que, il n'est pas bon d'activer ou désactiver des références. Après plusieurs essais avec les codes proposés sur le Forum sans succès; j'en ai trouver un qui est proposé chez MIMI et qui les désactives.

Alors voilà,

Pour commencer activer manuellement toutes les références utilisées fréquemment.
Ensuite, listez-les afin d'obtenir leurs noms.

Pour ma part, j'ai listé celles-ci :

VBA - Excel - stdole - Office - MSForms - MSComCtl2 - MSComctlLib
VBIDE - ADODB - ADOR - ADOX - CDO - DAO - SHDocVw -Outlook - MSScriptControl
Scripting - Shell32 - VBScript_RegExp_55 - WIA -Word


ATTENTION!! Ces 8 références doivent rester par défaut, surtout ne pas les toucher!!

Visual Basic For Applications
Microsoft Excel 14.0 Object Library
OLE Automation
Microsoft Office 14.0 Object Library
Microsoft Forms 2.0 Object Library
Microsoft Windows Common Controls-2 6.0 (SP6)
Microsoft Windows Common Controls 6.0 (SP6)
Microsoft Calendar Control 11.0
Microsoft Visual Basic for Applications Extensibility 5.3




Ajouter enfin le code suivant, soit d'un un module, soit dans un bouton du formulaire.

Code:
Private Sub CmdAnnuler_Click()
Dim vbProj As VBProject
Dim chkRef As Reference
   
Set vbProj = ThisWorkbook.VBProject

   For Each chkRef In vbProj.References
   If chkRef.Name = "CDO" Or chkRef.Name = "DAO" Or chkRef.Name = "SHDocVw" Or chkRef.Name = "Outlook" _
   Or chkRef.Name = "MSScriptControl" Or chkRef.Name = "Scripting" Or chkRef.Name = "Shell32" _
   Or chkRef.Name = "VBScript_RegExp_55" Or chkRef.Name = "WIA" Or chkRef.Name = "Word" _
   Or chkRef.Name = "ADODB" Or chkRef.Name = "ADOR" Or chkRef.Name = "ADOX" Then
  vbProj.References.Remove chkRef
  End If
   Next
   Set vbProj = Nothing
'Pour les références manquantes : If chkRef.IsBroken Then  vbProj.References.Remove chkRef
End Sub


À bientôt

Amicalement Lone-wolf :cool:
 
Dernière édition:

Statistiques des forums

Discussions
311 725
Messages
2 081 943
Membres
101 849
dernier inscrit
florentMIG