Pb sur VBA / Outils / Références

BenHarber

XLDnaute Occasionnel
Bonjour Le Forum,
J’ai un petit problème sur un fichier indépendamment utilisé par plusieurs utilisateurs dont certains ont Windows NT4 et d’autres Windows XP.
Une des macros de ce fichier « ouvre » un document Word (édition d’un modèle de lettre), ce qui fait appel à une référence « Microsoft Office x.x Object Library » dont x.x est une numéro de version différent selon la version de Windows de l’utilisateur.
Résultat : lorsqu’un utilisateur possédant Windows XP enregistre le fichier et qu’un utilisateur suivant possédant Windows NT4 veut utiliser cette macro : elle plante.
(Je leur dit bien d’aller dans VBA / Outils / Références et décocher la référence marquée « Manquant » mais avouez que ce n’est pas très convivial !)

Or, il me semble que j’étais tombé sur un post qui évoquait un problème similaire et que qq’un avait donné une solution pour contourner le problème (je crois une mise en variable de la référence, mais je n’en suis plus sur…).
Evidemment , les recherches préalables à ce post que j’ai pu faire sur le site n’ont pas abouti !

Quelqu’un saurait-il m’expliquer ce qu’il faut faire ?

Je vous remercie par avance.

Cordialement
 

MichelXld

XLDnaute Barbatruc
Re : Pb sur VBA / Outils / Références

bonjour cher BenHarber

tu peux par exemple ne pas activer les référence lorsque tu distribues ton fichier en remplaçant par exemple

Code:
Dim wordApp As Word.Application 
Dim wordDoc As Word.Document

par

Code:
Dim wordApp As Object 
Dim wordDoc As Object

et ensuite tu crées l'instance ainsi

Code:
Set wordApp = createObject("Word.Application")


par contre tu devras remplacer les constantes de la bibliothèque par leur valeur


bon apres midi
MichelXld
 

BenHarber

XLDnaute Occasionnel
Re : Pb sur VBA / Outils / Références

Michel,
Une fois de plus, tu as trouvé la solution à mon problème. Je te remercie 1000 fois.

PS : je n'ai pas compris ta fin de message "par contre tu devras remplacer les constantes de la bibliothèque par leur valeur".
(Je n'ai rien fait de spécial sur la suite de ma macro et ça fonctionne quand même ???)

Merci encore pour tes astuces et tes conseils, toujours bien vus !

Cordialement,

BenHarber
 

MichelXld

XLDnaute Barbatruc
Re : Pb sur VBA / Outils / Références

bonjour BenHarber


par contre tu devras remplacer les constantes de la bibliothèque par leur valeur


si ta référence Word est activée, tu peux par exemple écrire

Code:
Set docWord = appWrd.Documents.Add(DocumentType:=wdNewBlankDocument)

sinon tu devras indiquer

Code:
Set docWord = appWrd.Documents.Add(DocumentType:=0)

pour que ça fonctionne


bonne journée
MichelXld
 

Discussions similaires

L
Réponses
2
Affichages
3 K
Le motard
L