modification d'un en-tête utilisé par bcp modèles

Le
jb.trochet
Bonjour,
mon pb : nous changeons de coordonnées
Aussi nous devons modifier les en-tête et pied-de-page de nombreux modèles
de lettres.
Solution évidente : créer une macro pour modifier individuellement chaque
modèle, mais longue manip qd mêmeet risque d'erreurs et d'oublis.

Mais, je voudrais profiter de l'occasion pour transfomer chacun de ces
modèles en deux sous-documents modèles :
* le premier contenant en tête et pied de page comme un papier à lettre
classique,
* le second comportant le texte spécifique d'une lettre-type.
Chacun de ces deux sous-documents comportant des variables sous forme de
signets provenant d'un modèle (vérouillé par l'application)dans lequel ils
sont définis.

Ainsi à chaque changement des coordonnées, si minime soit-il, seul le
sous-document "papier à lettre" serait à modifier, sans avoir à changer
toutes les lettres-types.

J'ai tenté de tester la fusion de 2 documents sans le moindre champ ou
signet (Outils/Fusion de documents sous Word2000) l'un contenant uniquement
en-tête et pied de page, l'autre le corps du texte, mais j'ai droit au
message d'erreur suivant :
"les documents fusionnés contiennent des modifications non marquées.
Voulez vous effectuer la fusion juqu'à la première modification non
marquée?"

Je ne comprends pas car ces deux docs ont été fait d'un seul jet.

HELP !
Les bonnes volontés seront les bienvenues et chaudement félicitées si
elles me donnent la solution.

Merci d'avance.
JB
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
nuindacil
Le #577305
Bonsoir,

Personnellement, je pencherais quand même pour la première solution en
VBA. Comme par chance, et si je me souviens bien, il en existe une toute
faite de ce type dans la faq...
http://faq.ms.word.free.fr/VBA/VBA.htm

Maintenant pour tes histoires de fusion, je suppose que tu veux refaire
chaque modèle un par un ?... Question : changes-tu de coordonnées si
souvent ?...
En tous les cas la fusion, telle que tu en parles ici, n'est pas faite
pour ça, mais pour comparer 2 documents et fusionner les modifs des 2.
Donc, dans ton cas, je ne vois pas bien où tu veux aller avec ça.

Je ne sais pas quelle est l'ampleur du problème, mais tu pourrais peut
être utiliser pour tes variable des champs AUTOTEXT. Il suffirait
ensuite de modifier l'insertion automatique pour que les champs soient
modifiés, mais malheureusement, comme d'hab, la mise n'est pas
automatique... Alors quoi ? Une petite macro pour mettre les champs à
jour ?... Pffuiiitt, on ne s'en sort pas !!!

nuindacil
mvp word
http://faq.ms.word.free.fr

jb.trochet a écrit:
Bonjour,
mon pb : nous changeons de coordonnées
Aussi nous devons modifier les en-tête et pied-de-page de nombreux modèles
de lettres.
Solution évidente : créer une macro pour modifier individuellement chaque
modèle, mais longue manip qd même...et risque d'erreurs et d'oublis.

Mais, je voudrais profiter de l'occasion pour transfomer chacun de ces
modèles en deux sous-documents modèles :
* le premier contenant en tête et pied de page comme un papier à lettre
classique,
* le second comportant le texte spécifique d'une lettre-type.
Chacun de ces deux sous-documents comportant des variables sous forme de
signets provenant d'un modèle (vérouillé par l'application)dans lequel ils
sont définis.

Ainsi à chaque changement des coordonnées, si minime soit-il, seul le
sous-document "papier à lettre" serait à modifier, sans avoir à changer
toutes les lettres-types.

J'ai tenté de tester la fusion de 2 documents sans le moindre champ ou
signet (Outils/Fusion de documents sous Word2000) l'un contenant uniquement
en-tête et pied de page, l'autre le corps du texte, mais j'ai droit au
message d'erreur suivant :
"les documents fusionnés contiennent des modifications non marquées.
Voulez vous effectuer la fusion juqu'à la première modification non
marquée?"

Je ne comprends pas car ces deux docs ont été fait d'un seul jet.

HELP !
Les bonnes volontés seront les bienvenues... et chaudement félicitées si
elles me donnent la solution.

Merci d'avance.
JB




JBT
Le #576278
Bonsoir,
Merci de ta contribution.
Je ne savais pas que la fusion de docs concernait les modifications .
Mon aide en ligne n'affiche rien quand on comose "fusion de document...

Quand à mon problème est-il possible de le résoudre par une macro
automatique qui ferait une insertion de fichier limitée à l'en-tête et le
pied de page ?

A bientôt
JB



"nuindacil" <nuindaciliel> a écrit dans le message de
news:%23vkMe$
Bonsoir,

Personnellement, je pencherais quand même pour la première solution en
VBA. Comme par chance, et si je me souviens bien, il en existe une toute
faite de ce type dans la faq...
http://faq.ms.word.free.fr/VBA/VBA.htm

Maintenant pour tes histoires de fusion, je suppose que tu veux refaire
chaque modèle un par un ?... Question : changes-tu de coordonnées si
souvent ?...
En tous les cas la fusion, telle que tu en parles ici, n'est pas faite
pour ça, mais pour comparer 2 documents et fusionner les modifs des 2.
Donc, dans ton cas, je ne vois pas bien où tu veux aller avec ça.

Je ne sais pas quelle est l'ampleur du problème, mais tu pourrais peut
être utiliser pour tes variable des champs AUTOTEXT. Il suffirait
ensuite de modifier l'insertion automatique pour que les champs soient
modifiés, mais malheureusement, comme d'hab, la mise n'est pas
automatique... Alors quoi ? Une petite macro pour mettre les champs à
jour ?... Pffuiiitt, on ne s'en sort pas !!!

nuindacil
mvp word
http://faq.ms.word.free.fr

jb.trochet a écrit:
Bonjour,
mon pb : nous changeons de coordonnées
Aussi nous devons modifier les en-tête et pied-de-page de nombreux
modèles


de lettres.
Solution évidente : créer une macro pour modifier individuellement
chaque


modèle, mais longue manip qd même...et risque d'erreurs et d'oublis.

Mais, je voudrais profiter de l'occasion pour transfomer chacun de ces
modèles en deux sous-documents modèles :
* le premier contenant en tête et pied de page comme un papier à lettre
classique,
* le second comportant le texte spécifique d'une lettre-type.
Chacun de ces deux sous-documents comportant des variables sous forme de
signets provenant d'un modèle (vérouillé par l'application)dans lequel
ils


sont définis.

Ainsi à chaque changement des coordonnées, si minime soit-il, seul le
sous-document "papier à lettre" serait à modifier, sans avoir à changer
toutes les lettres-types.

J'ai tenté de tester la fusion de 2 documents sans le moindre champ ou
signet (Outils/Fusion de documents sous Word2000) l'un contenant
uniquement


en-tête et pied de page, l'autre le corps du texte, mais j'ai droit au
message d'erreur suivant :
"les documents fusionnés contiennent des modifications non marquées.
Voulez vous effectuer la fusion juqu'à la première modification non
marquée?"

Je ne comprends pas car ces deux docs ont été fait d'un seul jet.

HELP !
Les bonnes volontés seront les bienvenues... et chaudement félicitées si
elles me donnent la solution.

Merci d'avance.
JB







Anacoluthe
Le #576275
Bonjour !

"JBT" nous a écrit ...
Quand à mon problème est-il possible de le résoudre par une macro
automatique qui ferait une insertion de fichier limitée à l'en-tête
et le pied de page ?


Nuindacil se situant en principe dans le clan des antimacros
(quoique... parfois, mais bon c'est un autre sujet ;-) )) )
voici une petite piste (toute petite, je tiens à mon scalp ! )

Soit un fichier Entete.doc contenant les en-têtes et pieds de page
avec première page différente (c'est un cas fréquent)

La macro automatique suivante placée dans Normal.dot
va copier dans chaque nouveau document créé, quelqu'en soit
le modèle, les en-têtes et pieds de page de Entete.doc

Public Sub AutoNew()
ActiveDocument.Sections(1).PageSetup.DifferentFirstPageHeaderFooter = True
Documents.Open FileName:="c:Entete.doc", ReadOnly:=True, Visible:úlse
For i = 1 To 2
Documents("Entete.doc").Sections(1).Headers(i).Range.Copy
ActiveDocument.Sections(1).Headers(i).Range.Paste
Documents("Entete.doc").Sections(1).Footers(i).Range.Copy
ActiveDocument.Sections(1).Footers(i).Range.Paste
Next i
Documents("Entete.doc").Close
End Sub

J'ai dit une piste. Tout ça est du brouillon de macro au vin blanc
du dimanche soir :-) - Bonne soirée -

Anacoluthe
« Un gentleman, c'est quelqu'un qui sait jouer
de la cornemuse et qui n'en joue pas. »
- Pierre DESPROGES

Geo
Le #576274
Bonsoir Anacoluthe,


La macro automatique suivante placée dans Normal.dot
va copier dans chaque nouveau document créé, quelqu'en soit
le modèle, les en-têtes et pieds de page de Entete.doc


[...]

P'tet que j'ai rien compris
mais si on met un en-tête et un pied de page dans un normal.dot,
tout nouveau document les aura.
Quel intérêt d'aller les chercher dans un autre document ?

J'ai compris qu'il voulait modifier des modèles,
il faudrait faire une table avec les noms de modèles
ou les mettre dans un répertoire isolé
et recopier le modèle d'en-tête dans les modèles cités, non ?

Bon je vais me coucher, ça m'évitera les vertes réparties.

A+

Anacoluthe
Le #575961
Hello !

"Geo" nous a écrit ...
Bon je vais me coucher, ça m'évitera les vertes réparties.


oui

A+ :-)
A.

JBT
Le #575676
Hi !
Je vais fouiller le coup que tu suggères ! <;o)
Bonne nuit
JB


"Anacoluthe" news:
Bonjour !

"JBT" nous a écrit ...
Quand à mon problème est-il possible de le résoudre par une macro
automatique qui ferait une insertion de fichier limitée à l'en-tête
et le pied de page ?


Nuindacil se situant en principe dans le clan des antimacros
(quoique... parfois, mais bon c'est un autre sujet ;-) )) )
voici une petite piste (toute petite, je tiens à mon scalp ! )

Soit un fichier Entete.doc contenant les en-têtes et pieds de page
avec première page différente (c'est un cas fréquent)

La macro automatique suivante placée dans Normal.dot
va copier dans chaque nouveau document créé, quelqu'en soit
le modèle, les en-têtes et pieds de page de Entete.doc

Public Sub AutoNew()
ActiveDocument.Sections(1).PageSetup.DifferentFirstPageHeaderFooter = True
Documents.Open FileName:="c:Entete.doc", ReadOnly:=True, Visible:úlse
For i = 1 To 2
Documents("Entete.doc").Sections(1).Headers(i).Range.Copy
ActiveDocument.Sections(1).Headers(i).Range.Paste
Documents("Entete.doc").Sections(1).Footers(i).Range.Copy
ActiveDocument.Sections(1).Footers(i).Range.Paste
Next i
Documents("Entete.doc").Close
End Sub

J'ai dit une piste. Tout ça est du brouillon de macro au vin blanc
du dimanche soir :-) - Bonne soirée -

Anacoluthe
« Un gentleman, c'est quelqu'un qui sait jouer
de la cornemuse et qui n'en joue pas. »
- Pierre DESPROGES




Publicité
Poster une réponse
Anonyme