Envoi historiques de cotisations

Bonsoir,

Je viens vers vous pour une demande d'aide. je suis utilisateur d'excel de bas niveau. Notre association, nous avons des cotisations chaque début de trimestre.

J'enregistre les cotisations reçues dans un tableau excel (date de cotisation, libellé, matricule de l'adhérent, nom, montant, n° de justif)

En fin de l'année, J'aurais souhaité envoyé à chaque membre un récapitulatif de ses cotisations en indiquant les informations ci-dessus (date de cotisation, libellé...) et si possibles les cotisations non encore reçues (retard).

Je vous remercie d'avance de votre précieuse aide.

Bonsoir,

Je vous envoie votre fichier avec une solution d'éditions en boucle de PDF. Il faudra que vous adaptiez la mise en forme à votre convenance, sachant que les cellules de AVIS (destination) doivent rester collées. Pour les cotisations non encore reçues, il faudra peut-être modifier car je n'ai pas vu sur votre tableau de colonne à cet effet.

Cordialement,

Bonjour à toutes et tous,

Une autre proposition en attendant le complément d'informations demandées par 3GB.

Cdlt.

Public Sub CreatePDFs()
Dim ws As Worksheet
Dim sPath As String, sFile As String, sDate As String
Dim pt As PivotTable, pf As PivotField, pi As PivotItem

    Application.ScreenUpdating = False

    Set ws = ActiveWorkbook.Worksheets("Avis")
    Set pt = ws.PivotTables(1)
    Set pf = pt.PivotFields("Nom")
    sPath = ActiveWorkbook.Path & Application.PathSeparator
    sDate = Format(VBA.Date, " yyyy-mm-dd")

    pf.ClearAllFilters

    For Each pi In pf.PivotItems
        pf.CurrentPage = pi.Name
        sFile = "Avis cotisations " & pi.Name & sDate & ".pdf"
        ws.ExportAsFixedFormat _
        Type:=xlTypePDF, _
        Filename:=sPath & sFile, _
        ignoreprintareas:=False
    Next pi

    pf.ClearAllFilters

End Sub

Bonsoir,

Je vous remercie infiniment de votre aide. Toutefois, sauf erreur de ma part, ici chaque cotisation fait l'objet d'un envoi. Or comme je l'ai indiqué dans mon sujet, l'idée c'est de faire un récapitulatif des cotisations annuelles de chacun. comme à la banque, la fin de l'année, chaque client reçois un extrait de toutes les écritures passées dans la période.

J'avais essayé avec un publipostage mais ça me sortait la même chose, chaque cotisation un extrait. Or par exemple dans le tableau les adhérents MP008, MP011 et MP012 ont cotisé chacun 2 fois correspondant à 2 trimestres. En fin décembre, ils auront cotisé chacun 4 trimestres. Dans l'envoi je voudrais qu'il y ait les 4 lignes (les 4 cotisations) et non 4 extraits. Pour les impayés pour l'instant, je n'ai pas encore préparé l'état, mais si j'arrive à trouver une solution pour les cotisations réglées cela serait déjà bien. J'ai tenté de faire un publipostage à travers un tableau croisé dynamique comme source, sans succès. Encore une fois merci pour tout.

Re,

J'ai pour ma part tenté de répondre à ta question avec les éléments que tu as communiqué.

Je me suis rendu d'une anomalie sur le nombre de cotisations que j'ai corrigé

Un envoi par adhérent qui récapitule un état à une date donnée. N'ayant pas le montant de la cotisation annuelle, j'ai extrapolé avec le nombre de paiements pour le restant dû.

Envoie donc tous les éléments nécessaires pour une réponse adaptée.

Cdlt.

iso4217

Rebonsoir à tous,

Par rapport à mon problème j'ai une idée. Je ne sais pas si elle est bonne ni comment la traiter sous excel/vba.

1) trier le tableau par IDENTIFIANT et par date

2) compter le nombre d'identifiant dans le tableau (bien évidemment un identifiant compte une fois même s'il revient plusieurs fois dans le tableau)

3) faire une boucle de 1 à n (n étant le nombre d'identifiants): filtrer à chaque itération sur la colonne IDENTIFIANT, comme cela il n'apparaitra que la ou les cotisations d'un adhérent

4) copier l'IDENTIFIANT et le NOM pour les coller en entête du relevé

5) supprimer l'IDENTIFIANT et le NOM du tableau

6) copier les informations restantes (date, libellé, Montant, Référence dans le relevé)

7) répéter jusqu'à finir le les identifiants

Mais je ne sis pas comment transcrire cela.

Merci à tous

Re,

Bonne continuation !...

Cdlt.

Mille mercis à Jean Eric, Mille mercis à vous tous,

Voici donc les éléments nécessaires comme demandé.

2 feuilles : cotisations payées et IMPAYEES

Cordialement

Bonjour,

Une autre proposition.

Cdlt.

iso4217

Bonjour,

Oups !

Bonsoir à tous, bonsoir Jean- Eric,

C'est exactement ce que je voulais, je dirais même que c'est mieux que ce que je voulais. Une tonne de mercis.

Chacun doit recevoir son relevé de situation, cotisations payées et impayées sachant que le fichier compte environ 200 membres.

Néanmoins, ne vous moquez pas, je suis un simple utilisateur d'Excel,:


-
je ne vois pas comment je peux récupérer ce que vous avez fait pour l'adapter à mon cas

- y a t'il possibilité d'y inclure la date de cotisation? (au cas où vous n'auriez pas la temps, ce point n'est pas si nécessaire dès lors qu'il y a la référence de cotisation)

Une infinité de mercis. TOutes mes reconnaissances

Cordialemet

Salut Jean-Eric,

Encore moi, je crois avoir compris une chose. Il me suffit de récupérer le fichier et l'alimenter au fur et à mesure. Et la tour est jouée.

Par contre le bouton "créer pdfs" ne fonctionne pas.

Pour l'impression, puis-je lancer les impressions de tout le monde en même temps? ou bien je dois imprimer l'n après l'autre?

Agréable soirée.

Cordialement

Re,

Une mise à jour.

Les données sont donc sous forme de tableaux structurés, transformées avec Récupérer et transformer (Power Query) pour être synthétisées dans un TCD (tableau croisé dynamique).

Un fichier pdf par adhérent est crée, enregistré dans le répertoire courant du fichier xlsm.

A te relire.

Cdlt.

Bonsoir,

Oui, il y a possibilité de générer tous les PDF d'un seul coup en bouclant sur les identifiants.

Jean-Eric, tu tentes une dernière mise à jour ?

Cordialement,

Bonjour et Merci Jean-Eric,

J’essayerai tout ça après le travail, j’espère que je vais pouvoir m’en sortir

Toutes mes reconnaissances

Cordialement

Bonsoir 3GB,

Ha ha ha Je n'ai pas réussi à "générer tous les PDF d'un seul coup en bouclant sur les identifiants"

En tout cas, ici c'est très sympa. J'adore

Cordialement

Bonsoir saroumaya,

Je viens de regarder la mise à jour de Jean-Eric qui prévoit justement l'impression de tous les PDF en rafale.

Je n'ai cependant pas pu la tester, semble-t-il à cause de ma version. Mais, de mon côté, le bouton fonctionne bien.

Cordialement,

Bonsoir à vous tous,

Je suis nouveau sur ce forum, et je suis ravi de vous rejoindre.

Ce sujet m'intéresse beaucoup, car j'ai un cas similaire à traiter. Mais je suis bloqué ayant des connaissances très limitées de l'outil excel.

Pour l'instant, je me heurte à 2 problèmes, mais je suppose que je dois les séparer (l'envoi des relevés et le masque de saisie). Donc la 2ème question je ferai un nouveau post.

Ici mon souci, c'est que sur la feuille "Avis", j'arrive à consulter les adhérents un par un. Mais je ne vois pas où est ce que l'on peut activer pour éditer les avis de tous les adhérents "en rafale". Lorsque je clique sur le bouton "Créer PDFs" ça mouline, et par moments 3 fois ca affiche "publication...", mais au final je ne vois pas le résultat.

Au secours! !!

Merci à vous tous

Bonsoir Yahaya,

Bienvenu sur le forum !

Le bouton est lié à une procédure (c'est un petit programme informatique codé avec le langage VBA, permettant d'automatiser des actions, sur excel notamment). La procédure en question se trouve sur l'éditeur "Visual Basic" de l'onglet développeur du classeur Excel.

Le code génère une boucle qui :
- modifie la valeur du filtre du TCD (ici les noms d'adhérents);
- assigne aux variables (reprises pour le nom du PDF à créer) les valeurs correspondantes ;
- édite un PDF;
Cela pour chaque adhérent donc.

N'auriez-vous pas constaté l'apparition de plusieurs PDF dans le répertoire du fichier justement ?

Bonjour à toutes et toutes,

Une petite mise à jour du fichier précédent :

Public Sub CreatePDFs()
Dim ws As Worksheet
Dim sPath As String, sFile As String, sDate As String
Dim pf As PivotField, pi As PivotItem

    Application.ScreenUpdating = False

    Set ws = ActiveSheet
    Set pf = ws.PivotTables(1).PivotFields("Nom")
    sPath = ActiveWorkbook.Path & Application.PathSeparator
    sDate = Format(VBA.Date, "yyyy-mm-dd")

    For Each pi In pf.PivotItems
        pf.CurrentPage = pi.Name
        sFile = "Avis cotisations " & pi.Name & " " & sDate & ".pdf"
        ws.ExportAsFixedFormat _
                Type:=xlTypePDF, _
                Filename:=sPath & sFile, _
                ignoreprintareas:=False
    Next pi

    pf.CurrentPage = pf.PivotItems(1).Name

    MsgBox "Les PDFs ont été entregistrés dans le répertoire : " & Chr(10) & sPath, 64, "Information"

End Sub

@Yahaya,

Tu ne travaillerais pas sous Mac ?

Cdlt.

Rechercher des sujets similaires à "envoi historiques cotisations"