Publipostage et codes de champs écrasés

Anonyme
2022-09-06T08:10:13+00:00

Bonjour,

Je souhaite générer plusieurs documents (avec le publipostage de Word 365) et les enregistrer sous des noms de fichiers générés automatiquement à partir de mes données (nom du fichier "de base" + trigramme de personnes). Pour cette 2e partie, j'ai dû créer une macro VBA qui, par ligne de données enregistre un fichier pour une personne avec le bon nom de fichier. C'est OK.

Le problème est que mon fichier de base contient des codes de champs (dont le nom de fichier en en-tête/pied de page) et que ces champs sont remplacés par leur valeur dans les documents générés (ce ne sont plus des codes de champs, juste du texte, et en plus, l'ancienne valeur...) Ils ne peuvent donc plus être mis à jour (facilement) ni programmatiquement ni manuellement.

Existe-t-il une option à cocher dans le publipostage pour conserver les codes de champs "initiaux" (ceux ne faisant pas partie des champs fusionnés) ?

Cordialement,

Microsoft 365 et Office | Word | Pour les entreprises | Windows

Question verrouillée. Cette question a été migrée à partir de la Communauté Support Microsoft. Vous pouvez voter pour indiquer si elle est utile, mais vous ne pouvez pas ajouter de commentaires ou de réponses ni suivre la question.

0 commentaires Aucun commentaire

2 réponses

  1. Anonyme
    2022-09-13T15:26:48+00:00

    Merci pour ton retour, Bernard,

    Que le publipostage écrase les champs "MERGEFIELD" me semble tout à fait normal, en effet ! Par contre, les autres, je ne vois pas trop pourquoi... Ainsi, si le document à publiposter contient une table des matières, elle aussi se transforme en texte statique :/ .

    De mon point de vue, cela revient toujours à la question de pourquoi a-t-on conçu/pensé le publipostage pour ne générer qu'un document (avec plein de pages) ? Cela vient-il de l'époque "papier", où, puisque de toute façon on imprimait, on pouvait séparer les feuilles? Et donc là aussi, le texte généré pouvait être statique... J'aimerais bien que les développeurs repensent cette fonctionnalité...

    Bref, j'ai ma macro pour découper les fichiers "unitairement", il me manque celle Rechercher/Remplacer pour réinsérer les codes de champ dans tous les pieds de page et en-têtes contenant le nom du doc de publipostage. J'essaierai plus tard, car il faut apparemment boucler sur tous les types de HeaderFooter et je me prends les pieds dans le tapis sur le Range et Selection.

    A bientôt pour un retour sur mon code VBA...

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  2. Anonyme
    2022-09-06T08:43:16+00:00

    L'écrasement des champs est une caractéristique de base du publipostage. Par contre, tu dois pouvoir insérer les champs par des instructions complémentaires dans ta macro.

    Les instructions suivantes insèrent un champ "FILENAME" dans l'en-tête de la première section du document courant (petit test vite fait sur un coin de table) :

    ActiveDocument.Sections(1).Headers(wdHeaderFooterPrimary).Range.Select
    
    Selection.Fields.Add Range:=Selection.Range, Type:=wdFieldEmpty, _
    
    Text:="FILENAME ", PreserveFormatting:=True
    

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire