Publipostage Diviser PDF et renommer par PrénomNom

Bonjour à tous, je débute sous Excel et j’aimerais bien retrouver les fonction d’open office pour le publipostage.
Après un publipostage, sous open office (writer et calc), je peux enregistrer automatiquement chaque fichier généré par son nomPrénom (Durand1Prénom1 par exemple), au format souhaité (PDF ou Writer).
BasesansNom.xlsx (49,7 Ko)

Avec Word et Excel, après le publipostage j’obtiens un fichier unique qu’il faut ensuite découper et enregistrer.
Je renomme ensuite chaque fichier un par un c’est fastidieux je peux avoir plus de 50 fichiers à renommer.

Le but eet d’obtenir au final un fichier en .pdf ou en WORD par Nom.
Si cela est plus facile sous Excel, j’ai crée une fiche dans l’onglet deux de mon tableau.
J’ai testé des Macros mais je n’y arrive pas…
Merci pour votre aide

Word 2016
EXCEL 2015

BasesansNom.xlsx (49,7 Ko)

Bonjour

Ci-joint ma proposition

Attention j’ai scindé la colonne I en 2 colonnes :

D’une colonne I : Date factureMontant facture

j’ai réalisé 2 colonnes

colonne I : Date facture
colonne J : Montant facture

afin de pouvoir répartir correctement les 2 données (Date facture et Montant facture) dans l’onglet « Fiche »

La colonne J Montant facture est vide
Il faudra la compléter

Onglet « Base » cliques sur le bouton « Fichiers »

A chaque ligne le traitement complète l’onglet « Fiche » avec ses données correspondantes
Puis un fichier pdf est créé
Ceux-ci sont enregistrés
avec pour chacun le nom en colonne A et ce dans le même répertoire que celui du fichier

Testes et dis moi

Attention fichier de type « .xlsm » indispensable pour le traitement VBA à conserver impérativement

BasesansNom.xlsm (64,1 Ko)

Merci FFO, cela marche super bien !!! :smiley:
Je vais tester sur ma vrai base.
J’espère réussir a l’adapter (et à comprendre comment cela fonctonne…)

Bonjour
Merci pour ta réponse
A ta disposition pour la compréhension
N oublies pas de valider la réponse
Merci

Bonjour en travaillant sur la base de FFO, j’arrive à un problème :
Disons que DURAND 1 habite à plusieurs adresses, je voudrais une fiche par adresse pour durand.
Pour l’instant j’ai une fiche par nom…
Merci pour votre réponse
Copie de BasesansNom-3.xlsm (63,5 Ko)

Bonsoir
Que proposes tu pour les distinguer ?
Que doit on rajouter en plus du nom ?
Un chiffre incrementė (1,2,3 etc…)
Un élément de l adresse
Autre
Il y a possibilité aussi par toi même pour ces doublons de nom de les distinguer en les complétant d un indice propre à chacun et ainsi de pouvoir fonctionner sans modifier le traitement

comme ceci :

Tu réalises juste le premier : Durand 1-1
Puis par cliquer/glisser vers le bas les suivants se réalisent tous seuls avec l’incrémentation du dernier chiffre

Essaies tu verras

Merci de me dire

Bonsoir FFO, j’ai crée un code colone S, chaque fiche devrait s’enregistrer sous ce code.
Merci pour ton aide
Copie de BasesansNom-3.xlsm (62,6 Ko)

Bonjour

Ton fichier ci-joint adapté
La création en pdf de chaque ligne n’est réalisée que si en colonne S son nom d’enregistrement est présent
Ne rien mettre en colonne A autre que les données de chaque lignes le traitement se base sur celle-ci pour déterminer la dernière ligne à traiter

Testes et dis moi

Copie de BasesansNom-4.xlsm (65,6 Ko)

Bonjour FFO, cela fonctionne super bien mais j’ai l’impression qu’il y eu un décalage dans la fiche.
A partir de la ligne « date de la facture », c’est « rico » qui s’affiche , le reste des données de la fiche est également décalé.
J’ai essayé de remédier à ce décalage mais je n’ y arrive pas…
Peux tu m’expliquer comment tu fais ?
Merci beaucoup

Bonjour
Et oui je pensais que toutes les colonnes suivaient les lignes de la Fiche
Hélas la colonne I « suivi par » n’est pas dans cet onglet d’où à partir de celle-ci le décalage

Ci-joint ton fichier corrigé

Testes et dis moi

Copie de BasesansNom-4.xlsm (65,9 Ko)

Merci FFO, cela fonctionne bien.
Par contre j’ai modifié la fiche mais je n’arrive pas à supprimer les données des cellules grisée (B18- B25 -B26).
Peux-tu faire en sorte que rien ne s’inscrive dans ces cellules stp?
Il me manque aussi le montant de la facture en B24 de l’onglet fiche (ce montant correspond à la colonne Q de l’onglet Base)
Copie de BasesansNom-4.xlsm (65,0 Ko)
.
Merci beaucoup

Ci-joint ton fichier avec les cellules « B18 » « B25 » et « B26 » non traitées

« Il me manque aussi le montant de la facture en B24 de l’onglet fiche (ce montant correspond à la colonne Q de l’onglet Base) »

Pour moi il était prévu la colonne « J » que j’ai rajouté comme je te l’avais indiqué

petit rappel de mes propos :

D’une colonne I : Date factureMontant facture

j’ai réalisé 2 colonnes

colonne I : Date facture
colonne J : Montant facture

afin de pouvoir répartir correctement les 2 données (Date facture et Montant facture) dans l’onglet « Fiche »

La colonne J Montant facture est vide
Il faudra la compléter

Tant qu’elle est vide aucun montant à recopier en cellule B24
Si ce n’est pas cette colonne à utiliser à quoi bon l’avoir rajouté
Pourquoi tu m’as rien dit à son sujet ???

Merci de m’éclairer

Copie de BasesansNom-5.xlsm (63,9 Ko)

Bonjour FFO,
j’ai rempli la colonne K , le montant apparaît bien dans la fiche du coup, merci pour le tuyau (Je me suis emmêlé les pinceaux dans mes demandes).
Dans l’onglet fiche, j’ai rajouté une ligne (L19) qui ne ne devrait pas contenir de données .
Peux-tu supprimer le paris 23 de la cellule B19 stp (et si possible me dire comment tu as fait)?
Merci beaucoup, j’ai l’impression d’arriver au bout de ce que je voulais.
Copie de BasesansNom-5-.xlsm (65,2 Ko)

Bonjour

Pas simple à gérer une cible qui devient à plusieurs niveaux différente de la source :

colonne en source sans cellule en cible
colonne en source à ne pas remplir en cellule cible
cellule cible qui n’a pas de colonne en source

dur dur dur !!!

Pour le traitement de la 1° exception et la 2° exception :

For Each c In Range(« A » & i, « P » & i)
If c.Column <> 4 And c.Column <> 9 Then
If c.Column <> 12 And c.Column <> 13 Then

1° exception (colonne en source sans cellule en cible) :
If c.Column <> 4 And c.Column <> 9 Then
2° exception (colonne en source à ne pas remplir en cellule cible) :
If c.Column <> 12 And c.Column <> 13 Then

Pour la 3° exception (cellule cible qui n’a pas de colonne en source) :

If lignerecopie = 19 Then
lignerecopie = lignerecopie + 1
End If

Voilà la gestion dans le code de toutes les exceptions

Testes et dis moi

Copie de BasesansNom-6.xlsm (65,5 Ko)

Bonjour FFO,
Merci pour ton aide c’est exactement ce que je voulais.
Et merci pour les codes
,

De rien
Ce fut un plaisir
A une prochaine aventure

FFO zut alors, j’ai pas tout vu !
Dans l’onglet fiche, en B12, stp peux-tu me rajouter le nom du projet (colonne D de l’onglet base) comment fait-tu ? .
Merci beaucoup . :smiley:
Copie de BasesansNom-6 Copie.xlsm (67,1 Ko)

Bonjour
Cette nouvelle version complétée de cet ajout
Testes et dis moi

Copie de BasesansNom-6 Copie.xlsm (66,8 Ko)

Bonjour FFO, merci c’est exactement ce que je voulais.
Je n’ai plus qu’a l’adapté avec mes vrai données.
Encore merci

Parfait
N hésites pas pour tout besoin