Macro

Bonjour,

Je souhaite créé une macro pour gagner du temps avec mes équipes.

En effet, nous faisons manuellement l'échéancier de paiement de fournisseurs. Quand c'est deux fournisseurs, ça va. Mais parfois, il y en a 50, 100, avec chacun plusieurs factures. Là, ce n'est plus joli joli.

J'avais à cet effet créé une matrice (exemplaire en pièce jointe). Mais elle reste rudimentaire. J'ai même tenté une macro, mais j'arrive seulement à générer un onglet pour un fournisseur.

Dans l'imaginaire, je souhaite créer une macro, qui me génère un onglet par fournisseur (poir tous les fournisseurs présents dans l'extraction) avec le détail des factures échues et le nom du fournisseur sur l'onglet, en partant de l'extraction.

Sur le fichier joint, il y a 3 onglets:

  • les données brutes (sorties directement du logiciel)
  • le tableau retraité (retraitement du fichier brut)
  • un exemplaire du formulaire dont on se sert pour libeller le chèque.

Je reste dispose si par maladresse je n'ai pas bien posé mon problème, ou prendre des notes.

Sincère gratitude

42echeance-copie.xlsx (33.07 Ko)

Bonjour,

Je te suggèrerais de rétablir la ligne d'en-tête sur ta feuille d'extraction brute, elle est toujours relativement indispensable !

Et on doit la retrouver dans ton retraitement, dont il serait utile que tu précises en quoi i l consiste.

Enfin indiquer en quoi consiste (en détail) la méthode aboutissant à la production de ton formulaire final.

Cordialement.

J'espère avoir fait le nécessaire.

C'était la ligne en-tête

Sincère gratitude

26echeance-copie.xlsx (25.62 Ko)

Bonjour,

Je me permets de relancer ma demande. Je suis désolé de paraître éventuellement très pressant.

D'avance merci pour votre généreux retour.

Salutations.

bonjour

salut MFerrand

. Comme toi je demande d'ajouter des titres aux colonnes.

mon conseil : pas de VBA

sur la feuille d'extraction, ajoute la colonne qui aura la date d'échéance (si elle n'existe pas déjà) = date de facture + délai (en général 45j fin de mois ou autre, je te laisse calculer. Si 45jfdm, tu vas rigoler ! )

et une colonne Chéque envoyé le ou Virement le. Tu y mettras la date de règlement réel.

un simple filtre sur cette colonne et la colonne échéance (inf à aujourd'hui) te fournit les retards

filtre à nouveau par fournisseur et tu as ta solution

il te faut 4 clics, à faire une fois par semaine, ou même par jour.

une seule feuille suffit. Aucun VBA, aucun calcul ni formule.

hyper simple, hyper fiable

te durera des années

**********alternative**********

si le fichier vient d'une extraction de la compta en texte ou xls ou autre, fais menu Données, Obtenir.

profites-en pour filtrer les dates en retard si tu peux (sinon tu filtreras comme plus haut)

Bonjour M. JMD,

Je vous remercie pour le temps que vous avez consacré à la résolution au problème que j'ai posé.

Toutefois, sauf si je trahis l'esprit de votre généreuse proposition, je crois qu'elle ne répond pas efficacement à mon besoin.

En effet, mon objectif est de créer des formulaires de règlement par fournisseurs (impression d'une feuille EXCEL avec les données) : un formulaire=un fournisseur=un onglet contenant le détail du paiement (les factures et leurs paramètres)

Je vais essayer de schématiser:

J'ai un fichier de base (l'extraction) qui comporte les factures fournisseurs avec toutes les informations qui s'y rattachent et bien bien évidemment les noms des fournisseurs.

1. Je souhaiterais sans doute le retraiter pour qu'il soit exploitable (en fait c'est le cas, mas j'arrve moi-même à automatiser cette tache)

2.Je souhaiterais payer uniquement les factures échues (j'ai monté une matrice pour, voire fichier joint)

3.Je souhaiterais avoir par onglet, pour chaque fournisseur, le détail des factures à payer et le total de façon automatique (c'est la problématique, je n'y arrive pas).

4.Enfin, sur ce détail, j'agrafe le chèque correspondant pour que le signataire n'aille pas chercher très loin pour comparer les montants (celui du chèque et celui du formulaire EXCEL).

A ce jour, je le fais manuellement. Comme je l'expliquais, pour deux fournisseurs c'est reposant. mais pour 50, 100...c'est une tache "chronovore", d'autant qu'il n'y a aucune valeur ajoutée derrière pour la personne qui s'en occupe habituellement, alors qu'il y a des sujets plus intéressants.

L'idée de la macro me vient à l'esprit pour une raison simple : le cabinet d'audit dans lequel j'avais effectué mon stage pour la soutenance avait développé une macro pour l'élaboration des Lead (document directeur pour l'audit financier et comptable). En effet, il s'agissait de prendre les balances N et N-1 de la société dont on allait certifier les comptes, les coller sur le fichier à un endroit dédié, et en un clic, il générait par onglets les différentes sections d'audit (Immobilisations, charges d'exploitation, créances, dettes, capitaux propres...)

J'espère avoir bien présenté ma problématique. Maintenant, si vous estimez que votre proposition répond finalement à mon besoin, je vous saurai de bien vouloir me réexpliquer comment. Et dans ce cas, je regrette de ne pas comprendre très vite.

D'avance, merci pour votre contribution

re

joins un fichier exemple clair

une feuille avec les titres en ligne 1 :

  • fournisseur
  • n° de facture
  • montant
  • échéance
ajoute 15 lignes de valeurs fictives

un TCD va suffire pour faire des vues par fournisseur, et somme des montants en retard

je le ferai

note :les plus mauvais utilisateurs d'Excel que j'aie rencontrés étaient des experts comptables de haut vol, à peine capable de faire les 4 opérations

note aussi que créer une feuille par fournisseur est une mauvaise idée. ça complique inutilement. Perte de temps et risque de bugs.

Bonsoir, Salut jmd !

Je n'avais pas eu le loisir de regarder à nouveau ton fichier, et tu ne fournissais guère d'explications... Celles que tu fournis maintenant, ainsi que ton fichier posent quelques questions, en laissant de côté pour l'instant que le terme de formulaire que tu utilises n'est pas le terme approprié...

Quelle est la nature de l'extraction brute ? D'où vient-elle ? Comment ? Avec quelle périodicité ? que se passe-t-il d'une extraction brute à la suivante ? Est-ce qu'on oublie la précédente ? Autrement dit, est-ce que chaque extraction est le début d'un processus de traitement ? Ou y a-t-il globalement un processus unique dans lequel s'intègrent toutes les extractions ? Et qui a la maîtrise du (ou des) processus ?

Et il en faudrait une description un peu plus étoffée qui permette de fixer les idées sur sa raison d'être, ses phases et sa finalité...

Comment opères-tu ton retraitement ? Manuellement ou de façon automatique ? Pourquoi les centimes disparaissent des montants ?

Si le but que tu affiches est de matérialiser un document regroupant les factures d'un même fournisseur, pourquoi dans le modèle que tu présentes n'en trouve-t-on que 2 alors qu'il en a d'autres ?

(NB- je parles du but que tu affiches parce qu'il ne peut être qu'un maillon... et sa justification méthodologique ne peut avoir sa source que dans la finalité du traitement qu'on ignore.)

Cordialement.

Bonjour,

Merci pour l'attention.

J'étais absent, pour une éternité, à la "faveur" d'un long moment de convalescence.

Cela dit, voici les réponses aux questions posées:

  • L'extraction vient de notre logiciel de compta;
  • Il dispose d'une option "exportation excel". Dès qu'on l'actionne, une feuille Excel s'ouvre avec l'historique des factures;
  • Nous le faisons une fois par semaine en moyenne;
  • C'est toujours le même fichier, mais mis à jour si entre temps il y a eu de nouvelles factures. Du coup, on peut se passer de l'extraction précédente;
  • Le retraitement est automatique (à l'aide d'une macro);
  • Les centimes disparaissent parce qu'ils n'en existent pas en monnaie locale. C'est lors du retraitement qu'ils disparaissent;
  • C'était juste une illustration.

J'espère avoir bien répondu à toutes les questions.

Bien cordialement.

Merci d'avance pour l'intérêt

re à tous

ESSONO,

relis mon message du 03/08/18, joins un fichier exemple de 20 lignes et le résultat attendu

Bonjour,

Si retraitement par macro, il conviendrait de fournir la macro.

Lorsqu'on traite une extraction brute, le traitement précédent est effacé ? (toujours pas de réponse explicite sur ce point).

Que veux-tu extraire précisément ? Tout ? Seulement certaines factures ?

Eclater les factures par onglet Fournisseur ?

Bonjour,

Je comprends bien votre proposition. Mais la problématique, encore une fois, réside dans le fait de vouloir générer les feuil comme dans le fichier joint, en partant du fichier issue de l'extraction. Je ne sais pas si vous me saisissez, enfin je l'espère. Dans le fichier joins, je l'ai fait manuellement. Et je disais tantôt que c'est tout doux quand c'est 2, 3 à 10 fournisseurs. Mais quand 50, ça devient chronophage. Et comme il n'y a aucune valeur ajouté au bout pour celui qui ce travail, je souhaiterais faire apparaître ces feuilles automatiquement.

Merci pour votre intérêt.

18echeance-2.xlsx (57.58 Ko)

ton fichier est encore trop compliqué

simplifie, construis un exemple simple

10 lignes de données et le résultat attendu, sur un seul onglet. ça nous facilite la tâche.

Bonjour MFERRAND,

Voici le processus pour l'extraction.

1-Génération du fichier des factures fournisseurs Excel depuis le logiciel.

2-Copie des données (toute la feuille)

3-Collage des donnés dans le classeur dédié (qui comporte la macro de retraitement).

4-Actionner le bouton de retraitement

5-Obtention du fichier retraité.

Donc, le classeur de l'extraction me sert seulement à copier les données. Après je peux le supprimer et l'oublier sans aucun risque.

La difficulté c'est d'obtenir par la suite le résultat tel que présenté dans le fichier que je viens joindre, en partant des informations retraitées (feuil "Retraitement").

Le fichier retraité (feuil Retraitement") comporte toutes les informations de la facture. Maintenant, je souhaiterais générer, pour chaque fournisseur du fichier, un ordre de virement pour l'ensemble de ses factures présentes sur ce fichier (comme dans le fichier joint).

Merci pour l'intérêt.

Bien cordialement.

JMD, régardez mon dernier message, peut-être que ça peut résoudre la complexité du tableau. Je suggère d'oublier la feuille "Extraction brute". Le problème que je pose commence à mon avis à partir de la feuil "Retraitement".

Si je comprends bien, on part de l'extraction brute pour produire les feuilles par fournisseur.

Donc la feuille Retraitement disparaîtra, avec la macro qui la produisait. OK !

Au départ l'extraction brute, et une feuille modèle pour générer les autres. Je vois dans ce sens.

Bonjour,

Après examen, je reprécise pour confirmation :

- Il faut servir la fiche chèque à partir d'extractions de l'extraction brute sur 6 colonnes (6 premières colonnes d'un tableau Excel), les 2 dernières étant calculées.

- Les données destinées à une fiche sont extraites des lignes au nom d'un Fournisseur.

Le Fournisseur apparaît dans la colonne 4 de l'extrac. brute.

Il permet de nommer la fiche chèques.

- Les lignes retenues sont celles dont l'échéance (col. 15 de l'extrac. brute) est atteinte ou dépassée.

- Les données à prélever sur les lignes correspondant aux critères proviennent des col. 1, 5, 14 et 7 de l'extrac. brute.

Les 3 premières valeurs vont dans les colonnes 1 à 3 du tableau Excel, la 4e dans la colonne 6.

S'intercalent dans les col. 4 et 5 du tableau Excel, deux mentions fixe : 30 (délai d'échéance) et Echue (statut).

Donc la procédure serait la suivante :

- balayage de l'extraction brute pour y lister les fournisseurs, en mémorisant les lignes qui les concernent,

  • traitement par fournisseur :
  • test des lignes fournisseur traité sur la date d'échéance,
  • si échue, récupération ligne de 6 éléments : 1 - 5 - 14 - neutre1 - neutre2 - 7
(les numéros correspondent aux colonnes de l'extraction brute, les neutre 1 et 2 réservent des emplacements pour y intercaler les valeurs fixes)
  • si le fournisseur donne lieu à une fiche chèques :
  • copie de la fiche modèle, renommée au nom du fournisseur,
  • insertion des lignes prélevées.

Cordialement.

Rechercher des sujets similaires à "macro"