Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Publipostage - Créer un fichier PDF par document

Achille_du_60

XLDnaute Nouveau
Bonjour

Je suis trésorier d'une association et, chaque année, je dois établir un document cerfa pour les frais de déplacements sous forme de don.

J'ai réalisé le document cerfa au format word et constitué ma base de données des bénévoles sous la forme d'un tableau excel.

J'ai réalisé le publipostage en insérant les champs de fusion dans le document Word.

Quand je procède au publipostage, je me retrouve avec un seul fichier PDF contenant tous les enregistrements.

Je souhaiterai obtenir un fichier PDF par enregistrement nommé sur le nom de champ "NOM".

Je ne sais pas si c'est réalisable dans l'étape publipostage ou par une macro (VBA).

Quelqu'un peut-il m'aider ?

Merci
 

Pièces jointes

  • base.xlsx
    8.8 KB · Affichages: 43
  • Cerfa.docx
    12.8 KB · Affichages: 42

Achille_du_60

XLDnaute Nouveau
Bonsoir JM

Alors je réponds oui au 7 points.

Au final, rien n'a changé, quand je lance la macro, j'ai le message d'erreur 438 et la fenêtre de débogage.

Laisse tomber, ça me saoule, je ferais mes 50 attestations à la main.

Merci d'avoir essayé !
 

Staple1600

XLDnaute Barbatruc
Bonsoir John Connor

""There's no fate but what we make for ourselves"
Je plussoie: "Pas de destin, mais ce que nous faisons"
Apparemment, c'est ton document Word qui pose problème.

Tu es bien parti pour faire le test d'un document Word totalement vierge ?

Sinon, un suggestion en passant:
On peut essayer cet autre test (en te basant le fichier Excel que tu as joint en dernier)
Créer un document de publipostage manuel (sans macros)
Réalise un publipostage manuel mais n'enregistre pas les lettres types générées mais seulement le document maitre en *.docx
Joins alors ici le document Word uniquement.
Moi, je ferai le test suivant: je copiera le code VBA et testerait la macro avec ce document Word.

Si j'échoue, alors rendez-vous en 2029 pour le jugement dernier.
 

Staple1600

XLDnaute Barbatruc
Bonsoir le fil, Achille_du_60

J'ai changé mon fusil d'épaule
Avec ce code (que j'ai posté dans un autre fil), test OK avec ton fichier
(Je te laisse faire les adaptations nécessaires)
NB:Le seul changement que j'ai fait, c'est celui-ci (la casse du champ)
docname = .DataFields("nom").Value & ".pdf"
PS: J'ai sélectionné le dossier Archive publipostage précédent créé.

Par contre, je n'ai pas trouvé ce qui fait que le code de laurent plante avec ton fichier Word mais pas avec mon fichier Word (alors qu'on utilise le même code VBA et le même fichier Excel)
 

Achille_du_60

XLDnaute Nouveau
Salut JM

Merci encore de ne pas laisser tomber et de passer du temps à aider de pauvres incapables, comme moi.

J'ai bien compris que je devais inclure cette ligne dans mon code.

En plus ou en remplacement d'une ligne, je ne sais pas !
A quel endroit dans le code (je sais que ça a son importance), je ne sais pas ?

Du coup, je suis allé voir sur le fil avec Lysaxel, mais le code est différent du mien et je ne m'y suis pas retrouvé.

Désolé de te mettre encore à contribution.

Bonne soirée à toi
 

Staple1600

XLDnaute Barbatruc
Bonsoir

Il faut prendre le code du fil que je cite tel quel
Et ne faire le test qu'avec celui-ci
(Pour le moment, on oublie le code de laurent)
C'est pourquoi j'avais précisé: j'ai changé mon fusil d'épaule.
Si avec ce second code, cela ne marche pas alors...
comme disait Sarah...
Tout ce qu’il y a ici est foutu ! C’est vous qui vivez dans un putain de rêve, Silberman ! Moi, je sais que ça va arriver ! Ça va arriver !

 

Achille_du_60

XLDnaute Nouveau
Salut JM

Des nouvelles du front

La macro a tout de suite marché avec les fichiers tests.

J'ai fait quelques tests et j'ai légèrement remanié le code pour l'adapter à mes fichiers réels.

Et ça marche !!!

Sarah, on a battu Skynet !

Merci JM pour ta patience, le temps que tu as passé et ton abnégation, tu n'as rien laché !

Merci, merci et merci
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…