DéveloppementPaiement protégéEn savoir plus
- Les retouches prévues par la formule sont gratuites.
- Sans réponse de votre part dans les 3 jours suivant la livraison, le travail est validé automatiquement.
L’argent est réservé au paiement et versé uniquement une fois le travail validé.

Exemple de résultat
Fusion des fichiers de ventes mensuels de 9 boutiques en un seul rapport Excel
Comment on le lance
python merge_sales.py --month 2026-10
2026-11-02 09:14:03 INFO Dossier : sales/2026-10, 9 fichiers trouvés
2026-11-02 09:14:03 INFO shop-01.csv : 1 284 lignes
2026-11-02 09:14:04 INFO shop-02.xlsx : 967 lignes
2026-11-02 09:14:04 WARN shop-07.csv : 3 lignes sans prix ignorées (lignes 88, 412, 913)
2026-11-02 09:14:05 INFO Terminé : 10 412 lignes -> report-2026-10.xlsx (feuilles « Ventes » et « Totaux »)
Des paramètres, pas du code
Les noms de colonnes de chaque boutique se trouvent dans settings.ini : une nouvelle boutique ou une colonne renommée, c’est une ligne à modifier :
[columns]
date = Date, Date de vente, Jour
product = Produit, Article, Désignation
quantity = Qté, Quantité, Pièces
price = Prix, Prix unitaire
Un extrait du code
def read_shop_file(path: Path, columns: dict[str, list[str]]) -> pd.DataFrame:
"""Lit le fichier d’une boutique et lui donne les noms de colonnes du rapport."""
table = pd.read_excel(path) if path.suffix == ".xlsx" else pd.read_csv(path, encoding="utf-8-sig")
renamed = {}
for name, variants in columns.items():
found = next((c for c in table.columns if c.strip() in variants), None)
if found is None:
raise ReportError(f"{path.name} : aucune colonne pour '{name}' (recherché : {', '.join(variants)})")
renamed[found] = name
table = table.rename(columns=renamed)[list(columns)]
table["shop"] = path.stem
return table
Fichiers : une archive ZIP avec merge_sales.py (310 lignes), settings.ini, requirements.txt et un README qui explique comment installer Python, lancer le script et ce que signifie chaque message du journal. Le client le lance sur son propre ordinateur.
Client : une petite chaîne de 9 papeteries ; chaque boutique envoie ses ventes du mois en fichier CSV ou Excel, avec des noms de colonnes légèrement différents. Tâche : un seul script qui lit chaque fichier d’un dossier, met les colonnes au même format et écrit un rapport Excel unique avec toutes les ventes et une feuille de totaux par boutique.
Le client et tous les détails sont fictifs.
À propos de ce service
Les tarifs fournisseurs, les rapports de banque ou de marketplace et les états de stock n’arrivent souvent qu’en PDF, et copier leurs tableaux dans Excel casse les colonnes. Ce script Python lit les tableaux de vos PDF et les écrit dans Excel ou en CSV avec les colonnes à leur place : il raccorde un tableau qui s’étend sur plusieurs pages, retire les lignes d’en-tête répétées et les pieds de page et, dès Standard, transforme 1 234,50 ou (120.00) en vrais nombres et les dates en dates. Il est ajusté à la mise en page de vos fichiers : envoyez un ou deux PDF typiques ou la même mise en page avec des chiffres fictifs. Le PDF doit contenir du vrai texte, comme la plupart des fichiers enregistrés depuis un logiciel ; les scans et photos de papier demandent une reconnaissance de texte, non incluse. Vous lancez le script vous-même et vérifiez les totaux.
Ce qui est inclus
- Ce que vous recevezUne archive ZIP avec le script Python, un README avec des instructions pas à pas et, dès Standard, un fichier de paramètres avec les noms de colonnes et les pages ; le code est aussi affiché sur la page de la commande.
- Ajusté à votre mise en pageConçu et testé sur les fichiers d’exemple que vous envoyez
- Colonnes à leur placeUne ligne du PDF devient une ligne dans Excel
- Pages raccordéesUn long tableau devient une seule feuille sans en-têtes répétés
- De vrais nombresDès Standard, des montants et des dates que l’on peut additionner et trier
- Code lisibleAvec des commentaires, facile à ajuster si la mise en page change
Comment ça marche
- 1ExemplesVous envoyez un ou deux PDF typiques et montrez le tableau voulu
- 2CodeNous écrivons le script pour cette mise en page et le guide pour le lancer
- 3Testez-leVous le lancez sur vos fichiers et comparez les totaux au PDF
- 4RetouchesVous demandez des retouches selon votre formule et envoyez les éventuels messages d’erreur
Ce dont nous avons besoin
Un ou deux PDF typiques de ceux que vous recevez (ou la même mise en page avec des noms et chiffres fictifs), le tableau voulu et ses pages, et les colonnes à obtenir dans Excel. La façon dont les nombres y sont écrits (virgules, espaces, signes moins ou parenthèses) et le format des dates. Si tous vos fichiers ont la même mise en page ou s’il y en a plusieurs sortes, le nombre approximatif de fichiers traités, et votre système : Windows, macOS ou Linux.
Nous vous demanderons :
- De quels PDF s’agit-il ?
- Quelles colonnes vous faut-il dans Excel ?
- Tous vos fichiers se ressemblent-ils ?
- Où va-t-il tourner ?
Comparer les formules
| Formules | EssentielUne mise en page de tableau15 € | StandardTableaux avec paramètres30 € | PremiumOutil de tableaux60 € |
|---|---|---|---|
| Délai | 1 jour | 2 jours | 3 jours |
| Retouches | 1 | 2 | 3 |
| Code | jusqu’à 150 lignes | jusqu’à 400 lignes | jusqu’à 1 000 lignes |
| Fichiers de code | 1 | jusqu’à 3 | jusqu’à 8 |
| Fichier de paramètres | Non | Oui | Oui |
| Messages d’erreur clairs et journal | Non | Oui | Oui |
| Options de lancement et guide pour l’exécution planifiée | Non | Non | Oui |
| Guide d’installation et d’utilisation (README) | Oui | Oui | Oui |
| Langage | Python | Python | Python |
| Commander Essentiel | Commander Standard | Commander Premium |
Paiement protégé
Vous payez à la commande, mais l’argent n’est versé que pour un travail validé.
- Prix fixeLe prix de la formule ne change pas après le paiement.
- L’argent est réservéAu paiement, le montant est seulement réservé. Il n’est versé à Dleex qu’une fois le travail validé.
- Vérifié avant livraisonChaque résultat passe un contrôle qualité avant de vous parvenir, et vous le voyez sur la page de la commande avant de le valider.
- Retouches gratuitesDemandez des retouches dans le cadre de votre brief autant de fois que la formule le permet.
- Validation au bout de 3 joursSi, dans les 3 jours suivant la livraison, vous n’avez ni validé le travail ni demandé de retouches, il est validé automatiquement. Si vous écrivez dans le chat de la commande après la livraison, la commande est mise en attente ; après notre réponse, nous pourrons relancer le délai de 3 jours et vous le signalerons dans le chat.
- Travail refait ou remboursement intégralSi le résultat ne correspond pas à votre brief et que les retouches n’y ont rien changé, ou si le travail prend plus du double du délai prévu, écrivez dans le chat de la commande : nous referons le travail ou vous rembourserons intégralement.
Questions et réponses
Fonctionnera-t-il avec n’importe quel PDF ?
Il est conçu pour la mise en page de vos fichiers d’exemple. Si votre fournisseur change sa mise en page, le script peut demander un ajustement. Les PDF sans vrai texte, comme les scans, ne sont pas couverts.
Comment savoir si mon PDF contient du vrai texte ?
Ouvrez-le et essayez de sélectionner un mot à la souris. Si vous pouvez le sélectionner et le copier, le texte est réel. Si toute la page se sélectionne comme une image, c’est un scan.
Peut-il se tromper ?
Oui : dans un PDF, les tableaux ne sont pas enregistrés comme des tableaux, et une ligne inhabituelle peut casser une rangée. C’est pourquoi le script consigne les pages dont il n’était pas sûr, et vous devez comparer les totaux au PDF avant d’utiliser le résultat.
Dois-je envoyer de vrais rapports ?
Non. La même mise en page avec des chiffres fictifs fonctionne tout aussi bien, et le script tourne ensuite sur vos vrais fichiers, sur votre ordinateur.
Vous n’avez pas trouvé la réponse ?


