Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

désactiver une reference par vba

  • Initiateur de la discussion Initiateur de la discussion fredl
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

fredl

XLDnaute Impliqué
Bonjour à tous
J'ai un fichier word dans lequel sont activées plusieurs librairies dont "Microsoft access 11 object library"
Certains utilisateurs de ce fichier n'ayant pas Access, et afin que ce dernier ne plante à l'ouverture, je cherche (s'il existe) un moyen de désactiver(décocher) cette derniere par le vba (à l'ouverture du fichier)?

Cela est il faisable?

Merci d'avance de vos réponses.
Bonne journée à tous
Frédéric
 
Re : désactiver une reference par vba

Bonjour Fred

peut être une solution alternative, plutôt que d'activer la référence MS access, créé via le code, l'objet Access. Ci dessous un exemple, à tester :

Code:
Dim x As Object
Set x = CreateObject("Access.Application")
'ton code
Set x = Nothing

A voir si cela peut t'être utile...

bon après midi
@+

Edition : Aarf, en y réfléchissant pas sur que cela fonctionne finalement....
 
Dernière édition:
Re : désactiver une reference par vba

Re,

sinon, pour répondre à la question, et supprimer la référence "Access" :

Code:
With ThisWorkbook.VBProject
    .References.Remove .References("Access")
End With

@+

Edition : code à placer dans le module "thisworkbook" (Excel) ou dans le module "thisdocument" (word) dans l'événement "open" de l'un ou de l'autre.
 
Dernière édition:
Re : désactiver une reference par vba

Bonjour Pierrot,

j'ai essayé les 2 solutions en vain :
la 1ere "tourne", mais ne "décoche pas la librairie"
La 2eme bugge sur "With ThisWorkbook.VBProject" (je ne comprend pas pourquoi...)

La 2eme me semble la plus proche de la résolution de mon pb.
j'ai essayé de la modifier.... en vain

si tu as une idée...

Merci d'avance.

Frédéric
 
Re : désactiver une reference par vba

Re bonjour,
ça y est j'ai réussi à ajouter une ref :

Sub Addref()
'ajoute une référence à la bibliothèque
On Error Resume Next
'nom et chemin de la bibliothèque
nomRef = "C:\Program Files\Fichiers communs\Microsoft Shared\DAO\Dao360.dll"
ThisWorkbook.VBProject.References.AddFromFile nomRef
End Sub

Par contre, pour la déselectionner, la macro suivante tourne mais ne la déselectionne pas..

Sub Supref()
'ajoute une référence à la bibliothèque
On Error Resume Next
'nom et chemin de la bibliothèque
nomRef = "C:\Program Files\Fichiers communs\Microsoft Shared\DAO\Dao360.dll"
ThisWorkbook.VBProject.References.remove nomRef
End Sub

si tu as une idée....
merci d'avance.

Frédéric
 
Re : désactiver une reference par vba

Bonjour Fred

comprends pas trop chez moi ce code fonctionne (Excel 2003) :

Code:
With ThisWorkbook.VBProject
    .References.Remove .References("Access")
End With

bon après midi
@+
 
Re : désactiver une reference par vba

(Excel 2003) et PC comme toi, et ça bugge!
Ah les mystères de l'informatique(erreur de compilation su "remove": argument non facultatif)
Cdt
Frédéric
 
Re : désactiver une reference par vba

Re,

tu as bien laissé l'espace entre ".remove" et ".reference"....

Code:
With ThisWorkbook.VBProject
    .References.Remove[COLOR="Red"][SIZE="4"][B]espace[/B][/SIZE][/COLOR].References("Access")
End With

bonne soirée
@+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
15
Affichages
3 K
Réponses
2
Affichages
772
Réponses
12
Affichages
975
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…