Champs fixes en publipostage avec Word 2003
Le
Michel Grigaut

Bonjour tous :-)
J'ai deux questions mais je vais faire 2 "topics".
Voilà j'ai un fichier Excel avec des colonnes "Nom" "Prénom" "adresse" etc.
et un fichier Word qui fait appel à ces champs (insérés grâce à
"Outils>Publipostage") du genre :
<<Prénom>> <<Nom>>
Société : <<Soc>>
Adresse : <<adresse>>
<<adresse2>>
Tel : <<Tel1>>
<<Commentaire1>>
<<Commentaire2>>
Les noms entre crochets correspondent, bien sûr aux nom des colonnes Excel
(en respectant la casse).
Je cherche à imprimer un carnet d'adresses.
Le problème :
Lorsque les champs adresse ou commentaires sont vides, Word supprime la
ligne et ma présentation est entièrement faussée. Ces champs sont les seuls
à ne pas avoir de texte "en dur" devant (contrairement à "Soc" ou "adresse",
etc.).
Pour contourner, j'ai fait précéder ces 3 champs d'un tiret (du 6) et Word
conserve bien la ligne (pour y imprimer le tiret) même si les champ est
vide. Bien sûr c'est moins joli
Les questions :
1) Y a-t-il moyen de dire à Word de conserver l'emplacement du champ (donc
de la ligne) même si le champ est vide ?
2) Puis-je mettre un caractère invisible (l'espace ne marche pas) pour que
Word considère qu'il y a toujours quelque chose à imprimer ?
Merci d'avoir lu jusque là.
Mon problème est-il clair ?
Michel
(demandez-moi mon adresse mail si vous la voulez).
J'ai deux questions mais je vais faire 2 "topics".
Voilà j'ai un fichier Excel avec des colonnes "Nom" "Prénom" "adresse" etc.
et un fichier Word qui fait appel à ces champs (insérés grâce à
"Outils>Publipostage") du genre :
<<Prénom>> <<Nom>>
Société : <<Soc>>
Adresse : <<adresse>>
<<adresse2>>
Tel : <<Tel1>>
<<Commentaire1>>
<<Commentaire2>>
Les noms entre crochets correspondent, bien sûr aux nom des colonnes Excel
(en respectant la casse).
Je cherche à imprimer un carnet d'adresses.
Le problème :
Lorsque les champs adresse ou commentaires sont vides, Word supprime la
ligne et ma présentation est entièrement faussée. Ces champs sont les seuls
à ne pas avoir de texte "en dur" devant (contrairement à "Soc" ou "adresse",
etc.).
Pour contourner, j'ai fait précéder ces 3 champs d'un tiret (du 6) et Word
conserve bien la ligne (pour y imprimer le tiret) même si les champ est
vide. Bien sûr c'est moins joli
Les questions :
1) Y a-t-il moyen de dire à Word de conserver l'emplacement du champ (donc
de la ligne) même si le champ est vide ?
2) Puis-je mettre un caractère invisible (l'espace ne marche pas) pour que
Word considère qu'il y a toujours quelque chose à imprimer ?
Merci d'avoir lu jusque là.
Mon problème est-il clair ?
Michel
(demandez-moi mon adresse mail si vous la voulez).
Un contournement possible est de mettre un(e) espace insécable.
Michel
"Michel Grigaut" 4b112618$0$19196$
J'ai essayé cette "chose" mais à chaque fois après avoir fait Alt-F9
(Ctrl-F9 fait d'autres choses bizarres) je me retrouve avec Adresse2 au lieu
de <<Adresse2>>
Et, bien sur, cette ligne reste tout le temps inchangée comme écrite "en
dur" même s'il y a un champ correspondant (totalement ignoré donc) Exemple :
Michel Grigaut
Société :
Adresse : 10 Bd de la Cannebière (tiens donc !)
adresse2
Tel : 01 xx xx xx xx
(Que le champ <<adresse2>> soit vide ou non)
Comme je ne comprends pas la syntaxe des guillemets j'ai essayé 2 ou 3
variantes, mais sans résultats.
J'ai aussi essayé en remplaçant <> par = ou =
Il me semble lire :
Si le champ "Adresse2" n'est pas vide alors l'afficher entre guillemets ???
Mais que fait-il, justement s'il est vide (oui, je disais bien que j'avais
rien compris ;-)
Ne me faudrait-il pas un truc du genre :
Si le champ "Adresse2" est vide alors afficher un(e) espace (ou espace
insécable, peut-être ?) ???
De plus, je n'arrive pas à rétablir <<adresse2>> en éditant ce champ même en
respectant les espaces ! Mais je peux facilement le ré-insérer comme j'avais
fait la première fois :-)
Michel
"Circé" uSJE4$
Comme je le craignais les attributs des champs ne sont pas importés (ça
serait bien, par contre). le point arrive, mais bien visible !
Par contre je peux parfaitement le mettre dans le fichier Word (en blanc)
devant le champ (voire après), il sera certainement plus petit que l'espace.
Je vais faire des essais...
Michel
"Azo4"
La solution que je t'ai donnée est correcte mais, a priori, tu ne
connais pas les champs...
Commence par afficher le code des champs et tu devrais trouver :
{ MERGEFIELD adresse1}
{ MERGEFIELD adresse2}
etc
A la place de { MERGEFIELD adresse2}, tu mets ce que je t'ai donné, à
savoir :
{ IF {MERGEFIELD adresse2} <> "" "{MERGEFIELD adresse2}" "" }
*TOUS* les les { } s'obtiennent par Ctrl+F9
Tu peux ensuite lancer la fusion.
Circé
http://faqword.com
Michel Grigaut avait soumis l'idée :
J'ai complètement effacé le champ et tapé ce que tu m'avais donné la
première fois (avec plus de guillemets) en utilisant Ctrl-F9 comme indiqué.
En rebasculant les champs la ligne a semblé devenir vide mais à la fusion
tout à marché comme prévu.
{ IF {MERGEFIELD "adresse2"} <> "" "{MERGEFIELD "adresse2"}" "" }
Merci :-)
Bonne journée
"Circé" %