Bonjour,
Mon contexte est le suivant:
Plusieurs classeur qui utilise le même fichier Module.bas
Un Module.bas maître est sauvegarder sur une partition d'un serveur
Le module.bas est verrouillé pour affichage.
Lorsque j'ouvre un classeur j'ai une macro dans ThisWorbook pour rafraîchir le module.bas du classeur par le module.bas maître.
NOTE:ThisWorkbook.Unprotect Password:="MotDePasse"
'Rafraichir le module avant son utilisation
'Remettre le nom du module comme celui sur le serveur
Set VBProj = ActiveWorkbook.VBProject
Set VBComp = VBProj.VBComponents("Module1")
With VBComp
.Name = ("Module")
End With
'Remplacer le module
Set VBComp = VBProj.VBComponents("Module")
VBProj.VBComponents.Remove VBComp
VBProj.VBComponents.Import Filename:=("P:\User\Modules\Module.bas")
Dans le classeur le module.bas est indexé de 1 à Module1.bas lors de l'importation.
Ceci a fait l'objet d'une autre discussion et le tout fonctionne
La lignene veut s'exécuter, il y a une erreur 50289 Impossible d'effectuer cette opération tant que le projet est protégé.Set VBComp = VBProj.VBComponents("Module1")
Je comprend donc que la ligne Unprotect est pour le classeur et non le projet.
Une idée?
Partager