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

installer une bibliothèque dans excel en fonction de le version (2007/2010)

Domilink

XLDnaute Nouveau
Bonjour

J'ai écrit un programme en excel qui doit utiliser word par moment.
Mon problème est que je dois appeler une bibliothèque (entre autre 'msword.olb') soit sous office 2007 ou 2010.
Ce programme passe de personnes en personnes et chacunes de ces personnes utilisent office 2007 ou 2010.

J'ai trouvé le code pour ajouter cette bibliothèque

Chemin = Excel.Application.Path
fichier = Chemin & "\MSWORD.OLB"
ThisWorkbook.VBProject.VBComponents.Parent.References.AddFromFile fichier


Quand je quitte le fichier, je dois, bien sûr, enregistrer celui-ci (la bibliothèque s'est donc ajoutée).
Imaginons que je travaillais avec office 2007, c'est donc la bilbiothèque 2007 qui s'est ajoutée.

Imaginons toujours que, plus tard, je travaille sur un autre PC qui possède office 2010 !
a l'ouverture j'aurais un message d'erreur.

Je pense donc qu'il serait intéressant qu'à chaque ouverture de mon fichier, je puisse décocher la bibliothèque concernée et rajouter celle qui est liée à l'office que j'utilise à ce moment là.

J'ai essayé le code qui suit sans succès

On Error Resume Next

Chemin = Excel.Application.Path
fichier = Chemin & "\MSWORD.OLB"
ThisWorkbook.VBProject.VBComponents.Remove .References(fichier)

ThisWorkbook.VBProject.VBComponents.Parent.References.AddFromFile fichier



Où est mon erreur ?

Merci pour votre aide
 

Dranreb

XLDnaute Barbatruc
Re : installer une bibliothèque dans excel en fonction de le version (2007/2010)

Bonsoir.
Déjà c'est:
With ThisWorkBook.VBProject.References
Parce que VBProject.VBComponents.Parent c'est VBProject !
Ensuite si dans le With pour un ajout c'est bien:
.AddFromFile(Ficher), en revanche pour une suppression c'est
.Remove .Item(NomDeBibliothèque)
Cordialement.
 

Domilink

XLDnaute Nouveau
Re : installer une bibliothèque dans excel en fonction de le version (2007/2010)

Bonjour

J'ai modifié le code en fonction de tes infos mais j'ai un message d'erreur
Voici mon code

01 Chemin = Excel.Application.Path
02 fichier = Chemin & "\MSWORD.OLB"

03 With ThisWorkbook.VBProject.references
04 .Remove .Item("MSWORD.OLB")
05 .AddFromFile fichier
06 End With

et le message d'erreur "L'indice n'appartient pas à la sélection" apparaît à la ligne 04

Pourtant le nom de la bibliothèque est bien "MSWORD.OLB"

Où ai-je commis une erreur ?

Merci pour ton aide
 

Dranreb

XLDnaute Barbatruc
Re : installer une bibliothèque dans excel en fonction de le version (2007/2010)

Pourtant le nom de la bibliothèque est bien "MSWORD.OLB"
Faux: ça c'est le nom du fichier qui contient la bibliothèque "Word", référence "Microsoft Word 10.0 Object Library".
"C:\Program Files\Microsoft Office\Office10\MSWORD.OLB" pour être précis, qu'il faut spécifier, en effet, au AddFromFile. Mais pour la suppression c'est .Remove .Item("Word")
Cordialement.
 
Dernière édition:

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…