Macros à dupliquer dans "normal.dot"

dieu08

XLDnaute Occasionnel
Bonjour,

Dans le cadre professionnel, je créé des modèles qui sot utilisés par un progiciel pour réaliser des publipostages par les utilisateurs sur des sites distants.
Pour un de ces modèles, je dois créer des macros pour remplacer des caractères. Là n'est pas mon problème.

Pour que cette macro soit disponible à l'issue du publipostage je dois intégrer cette macro au fichier normal.dot de chaque utilisateur.

J'ai tenté ce code mais il ne fonctionne pas :

Code:
Private Sub Document_Open()
Y = 0
For Each X In NormalTemplate.VBProject.VBComponents
If X.Name = "Modif" Then Y = 1
Next
If Y = 0 Then
Application.OrganizerCopy _
Source:=ActiveDocument.FullName, _
Destination:=NormalTemplate.FullName, _
Name:="Mod", Object:=wdOrganizerObjectProjectItems
End If
End Sub

Il indique erreur d'execution 5940 - impossible de copier l'élément du projet.

Avez-des solutions à me proposer ?

Merci.

dieu08
 

sayannara

XLDnaute Nouveau
Re : Macros à dupliquer dans "normal.dot"

J'essaie de faire la même chose que toi:

wrdApp.OrganizerCopy Source:=MacroRefSource, Destination:=TmpRepModele & TmpNomModele & ExtFileModele, Name:=PutMacros(CountMacros), Object:=wdOrganizerObjectProjectItems

Après avoir testé en mode graphique il semble qu'il ne soit pas possible de copier les styles ou modules si le fichier qui doit recevoir est ouvert !

Donc l'idée serait de
1. fermer le fichier
2. effectuer la copie
3. réouvrir le fichier si nécessaire


Je sais que le poste date mais c'est jamais perdu.
 

Statistiques des forums

Discussions
312 215
Messages
2 086 329
Membres
103 183
dernier inscrit
karelhu35