Paiement 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
Google Forms peut vous signaler qu’une nouvelle réponse est arrivée, mais pas ce qu’elle dit, ni l’envoyer au collègue qui s’occupe de cette ville ou de ce service. Ce Google Apps Script s’exécute à chaque envoi de votre formulaire et envoie un e-mail avec les réponses bien présentées : les questions en gras, les réponses dessous et un lien vers la feuille des réponses. Dès Standard, il choisit le destinataire selon une réponse, par exemple les demandes de Lyon vers une adresse et celles de Paris vers une autre. Premium peut envoyer une confirmation à la personne qui a rempli le formulaire, si celui-ci demande son e-mail, et un récapitulatif quotidien pour vous. Les e-mails partent de votre propre compte Google, dans la limite quotidienne fixée par Google. Vous l’installez dans votre compte.
Ce qui est inclus
- Ce que vous recevezUne archive ZIP avec le code Apps Script et un README qui montre comment l’ajouter à votre formulaire, autoriser l’accès et créer le déclencheur ; le code est aussi affiché sur la page de la commande.
- La réponse complèteChaque question et chaque réponse dans l’e-mail lui-même
- Un objet clairex. : Nouvelle demande : Nom, Service
- À la bonne personneDès Standard, l’adresse choisie selon une réponse
- Depuis votre compteEnvoyé depuis votre compte Google, dans les limites de Google
- Code lisibleAvec des commentaires, pour modifier facilement l’e-mail plus tard
Comment ça marche
- 1TâcheVous envoyez les questions du formulaire et qui doit recevoir quoi
- 2CodeNous écrivons le script et le guide d’installation
- 3Testez-leVous l’ajoutez à une copie du formulaire et envoyez une réponse de test
- 4RetouchesVous demandez des retouches selon votre formule et envoyez les éventuels messages d’erreur
Ce dont nous avons besoin
Les questions de votre formulaire (une capture d’écran ou la liste), les adresses qui doivent recevoir les alertes et, dès Standard, la règle de répartition, par exemple par ville ou par service. L’objet et le texte éventuel de l’e-mail. Pour une confirmation à la personne qui a rempli le formulaire (Premium), le texte de cet e-mail et la question qui demande son adresse. Si votre formulaire enregistre les réponses dans une feuille Google Sheets.
Nous vous demanderons :
- À quoi sert le formulaire ?
- Qui doit recevoir les alertes ?
- À quoi doit ressembler l’e-mail ?
- Autre chose à envoyer ?
Comparer les formules
| Formules | EssentielUne alerte15 € | StandardAlertes avec paramètres30 € | PremiumOutil d’alertes60 € |
|---|---|---|---|
| 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 | Google Apps Script | Google Apps Script | Google Apps Script |
| 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
Peut-il envoyer une confirmation à la personne ?
En Premium, oui, si votre formulaire demande son adresse e-mail. L’e-mail part de votre compte Google et se lit donc comme n’importe quel e-mail de votre part.
Fonctionnera-t-il si le formulaire est dans le compte de quelqu’un d’autre ?
Le script doit être ajouté par un éditeur du formulaire, et les e-mails partent alors du compte de cette personne. Le README montre les étapes.
Peut-il envoyer un SMS ou un message de chat à la place ?
Cette offre envoie des e-mails. Un message vers un service doté d’une API publique, comme un canal Slack via son webhook entrant, peut être ajouté selon votre formule si vous configurez ce webhook vous-même.
Aurez-vous accès à mon formulaire ?
Non. Vous ajoutez le code vous-même et l’autorisez dans votre propre compte. Une capture d’écran des questions suffit.
Vous n’avez pas trouvé la réponse ?