N° 09 · Étude de cas · Classeur Excel
Le budget
Un budget Excel qui calcule, avec 3303 formules, à partir d'un seul prompt
Le budget de la nouvelle application d'une chaîne de cafés inventée, au bout de six mois: le plan approuvé, ce qui a été dépensé, où le projet va atterrir et ce que coûte la prochaine décision. Neuf feuilles, 3303 formules et pas un seul résultat saisi à la main: quand vous changez une hypothèse, tout bouge. Claude Code a construit le fichier Excel à partir d'un seul de mes prompts et l'a vérifié en le regardant. Changez les chiffres ici même, ou téléchargez-le.
Chaque feuille ci-dessous est un tableau avec les valeurs que le classeur calcule. Sélectionnez une cellule pour lire sa formule. Les trois graphiques du Dashboard ont une description, et leurs chiffres se trouvent en dessous et dans la feuille Monthly.
| A | B | C | D | E | F | G | H | I | J | K | L | M | N | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | ||||||||||||||
| 2 | Tidewell App 2.0: budget status | |||||||||||||
| 3 | End of September 2026 · Tidewell Coffee Co. · USD | |||||||||||||
| 4 | ||||||||||||||
| 5 | ● Amber: inside the approved budget, with less than 50% of the contingency left | |||||||||||||
| 6 | Checks: All 14 checks pass · Scenario: Current forecast | |||||||||||||
| 7 | ||||||||||||||
| 8 | Approved budget | Spent to date | Forecast at completion | Contingency left | Launch | Work per dollar | ||||||||
| 9 | $1,925k | $827k | $1,871k | $54k | Jan 2027 | 0.86 | ||||||||
| 10 | incl. $178k contingency | 43% of the budget · plan: $810k | +$124k against the base budget | 30% of the $178k reserve | On the approved date | $0.86 of planned work for each $1 spent | ||||||||
| 11 | ||||||||||||||
| 12 | Cumulative spend | What moves the forecast | ||||||||||||
| 13 | Approved plan against actual to date plus forecast. The shaded months are forecast. | Forecast minus budget per cost line, largest first | ||||||||||||
| 14 | ||||||||||||||
| 15 | ||||||||||||||
| 16 | ||||||||||||||
| 17 | ||||||||||||||
| 18 | ||||||||||||||
| 19 | ||||||||||||||
| 20 | ||||||||||||||
| 21 | ||||||||||||||
| 22 | ||||||||||||||
| 23 | ||||||||||||||
| 24 | ||||||||||||||
| 25 | ||||||||||||||
| 26 | ||||||||||||||
| 27 | ||||||||||||||
| 28 | ||||||||||||||
| 29 | ||||||||||||||
| 30 | ||||||||||||||
| 31 | ||||||||||||||
| 32 | ||||||||||||||
| 33 | ||||||||||||||
| 34 | ||||||||||||||
| 35 | Contingency | Decisions this month | ||||||||||||
| 36 | What has used the $178k reserve so far | Numbers to have ready for the steering committee | ||||||||||||
| 37 | One more month of build would cost | $187k | ||||||||||||
| 38 | The contingency left pays for | 0.3 months | ||||||||||||
| 39 | Pending change requests, not yet decided | $46k | ||||||||||||
| 40 | Contingency left if they are approved | $8k | ||||||||||||
| 41 | Forecast at today's work per dollar | $2,096k | ||||||||||||
| 42 | … against the approved budget | +$171k | ||||||||||||
| 43 | Work per dollar: the cost performance index on Report. | |||||||||||||
| 44 | A month of build: the current plan's build team and platform for one month. | |||||||||||||
| 45 | Data behind the charts | |||||||||||||
| 46 | Formulas only. The charts and the colours above read these cells. | |||||||||||||
| 47 | Status | Amber | Amber: inside the approved budget, with less than 50% of the contingency left | |||||||||||
| 48 | Checks failing | 0 | Scenario | Current forecast | Months late | 0 | ||||||||
| 49 | ||||||||||||||
| 50 | Over (under) budget by cost line | Largest first | Over | Under | Room | |||||||||
| 51 | Product management | – | 0 | Approved changes | 59,500 | 59,500 | – | (45,675) | ||||||
| 52 | Product design | (21,875) | 21875 | Android development | 41,040 | 41,040 | – | |||||||
| 53 | iOS development | (780) | 780 | Product design | (21,875) | – | (21,875) | |||||||
| 54 | Android development | 41,040 | 41040 | Quality assurance | 21,660 | 21,660 | – | |||||||
| 55 | Backend & integrations | – | 0 | Cloud hosting | 12,800 | 12,800 | – | |||||||
| 56 | Quality assurance | 21,660 | 21660 | Test devices | 5,040 | 5,040 | – | |||||||
| 57 | Cloud & DevOps | 3,625 | 3625 | All other lines | 5,445 | 5,445 | – | |||||||
| 58 | Engineering lead | – | 0 | |||||||||||
| 59 | User research & testing | – | 0 | |||||||||||
| 60 | Security & accessibility | 2,500 | 2500 | |||||||||||
| 61 | Payment certification | 1,700 | 1700 | |||||||||||
| 62 | Test devices | 5,040 | 5040 | |||||||||||
| 63 | Launch content | – | 0 | |||||||||||
| 64 | Cloud hosting | 12,800 | 12800 | |||||||||||
| 65 | Software & tools | (1,830) | 1830 | |||||||||||
| 66 | Third-party services | 230 | 230 | |||||||||||
| 67 | Approved changes | 59,500 | 59500 | |||||||||||
| 68 | ||||||||||||||
| 69 | Contingency reserve | |||||||||||||
| 70 | Approved changes | 59,500 | ||||||||||||
| 71 | Overruns | 64,110 | ||||||||||||
| 72 | Left | 54,145 | ||||||||||||
| 73 | Reserve | 177,755 | ||||||||||||
S'ouvre dans Excel, Google Sheets, Apple Numbers et LibreOffice. Pas de macros, pas de liens vers d'autres fichiers. Le classeur est en anglais.
Comment l'utiliser
- Cliquer
- Sur une cellule: sa formule s'affiche en haut. Cliquez sur une référence pour y aller.
- Saisir
- Dans une cellule bleue, puis Entrée: tout le classeur se recalcule.
- Et si…
- Quatre boutons qui changent chacun une saisie, comme vous le feriez.
- Télécharger
- Le fichier Excel, avec ses graphiques, ses contrôles et sa mise en page pour l'impression.
Ce que vous voyez
Tidewell Coffee Co. est une chaîne de cafés que Claude Code a inventée, et elle construit une nouvelle application: commander à l’avance, payer au comptoir, cumuler des points. Nous sommes en octobre 2026, six mois après le début d’un projet de douze. En mars, le comité de pilotage a approuvé 1,925 million de dollars. 827 000 dollars sont dépensés, et la prévision dit que le projet atterrira à 1,871 million de dollars.
Voici le budget du projet sous forme de classeur Excel de neuf feuilles, en anglais: une page de garde, un tableau de bord, un rapport par poste de coûts et une vue mensuelle pour les personnes qui le lisent; trois feuilles de saisies; une feuille avec tous les calculs; et une avec les contrôles que le classeur effectue sur lui-même. Il contient 3303 formules et pas un seul résultat saisi à la main. Chaque chiffre du tableau de bord vient des saisies et des 64 écritures de la feuille Actuals, par une chaîne de formules que vous pouvez suivre. Cliquez sur un chiffre ci-dessus et sa formule s’affiche en haut. Cliquez sur une référence dans la formule et vous y êtes.
J’ai écrit dans mon prompt que la plupart des gens n’ont jamais vu un tableur vraiment bien construit, et encore moins un tableur fait par une IA. Voici celui que Claude Code a fait, et vous n’avez pas besoin d’Excel pour regarder dedans.
D’abord en parler, puis le faire construire
Vous n’avez plus besoin de passer des jours à construire un tableur sur mesure, ni de trouver un modèle qui s’en approche et de passer encore des jours à l’adapter. Parlez-en d’abord avec une IA, jusqu’à ce que votre besoin soit entièrement défini: qui lit le budget, ce que ces personnes décident avec, quels chiffres vous connaissez et lesquels vous estimez, à quelles questions il doit répondre chaque mois. Puis faites-lui construire exactement cela.
Pour celui-ci, j’ai sauté la discussion. Mon prompt disait « Don’t ask me questions », parce que ce budget devait montrer ce dont Claude Code est capable, pas servir à un vrai projet. Claude Code a donc deviné: l’entreprise, le projet, chaque chiffre. Pour un budget dont vous vous servirez vraiment, laissez d’abord l’IA poser ses questions.
Je l’ai construit dans Claude Code, mais Claude Cowork ou une conversation avec Claude pourraient le construire aussi, et ChatGPT et d’autres modèles savent faire des choses semblables. À ma connaissance, Copilot, celui de Microsoft, n’est pas encore tout à fait aussi bon dans Excel. S’il n’a pas déjà rattrapé son retard, je pense qu’il le fera. Pour un budget de travail, commencez par l’assistant que votre entreprise a validé.
C’est un modèle, alors changez-le
Les quatre boutons au-dessus de la feuille changent chacun une cellule de saisie, comme vous le feriez dans Excel, et tout le classeur se recalcule dans votre navigateur. Essayez-les sur le Dashboard:
- Le développement prend un mois de plus. Un mois de plus avec toute l’équipe coûte 187 000 dollars. La prévision bondit à 2,06 millions de dollars, au-delà du budget approuvé, le lancement glisse en février et le statut passe au rouge.
- Accepter les cartes cadeaux. La seule demande de changement encore en attente d’une décision coûte 46 000 dollars. Acceptez-la et il reste 8000 dollars de la réserve prévue pour les imprévus.
- 10 % de plus pour les prestataires. Trois des huit rôles sont des prestataires payés à la journée. Leur hausse mange la réserve jusqu’à 17 000 dollars.
- Clôturer octobre avant ses coûts. Celui-ci ressemble à une bonne nouvelle: la prévision baisse de 187 000 dollars, parce qu’octobre compte désormais comme terminé et que rien n’a été comptabilisé pour lui. Mais l’un des contrôles du classeur échoue, et le tableau de bord le dit en rouge.
Ou sélectionnez n’importe quelle cellule bleue, dans les feuilles Inputs, Purchases ou Actuals, et tapez votre propre chiffre.
Construit selon les règles des bons tableurs
Mon prompt demandait les bonnes pratiques de conception des tableurs. Voici ce que cela a donné:
- Saisies, calculs et résultats sont sur des feuilles séparées. Les saisies sont en bleu, les hypothèses sur fond jaune, et ce sont les seules cellules qui ne sont pas verrouillées. Chaque formule est protégée, sans mot de passe, pour que personne n’en écrase une par mégarde.
- Une seule chronologie partout. Chaque feuille mensuelle a les mêmes 15 mois dans les mêmes colonnes: la colonne K, c’est toujours septembre 2026.
- Une formule par ligne. Chaque ligne utilise la même formule pour tous les mois. Il n’y a pas d’exception modifiée à la main au milieu, et c’est la façon la plus courante dont un tableur se met à donner des résultats faux sans que personne le remarque.
- Le plan approuvé reste tel qu’il était. Le plan d’aujourd’hui se trouve à côté, dans ses propres colonnes, et chaque différence est mise en évidence. Modifiez quand même le plan approuvé et un contrôle échoue.
- Les coûts réels ressemblent à un export du système financier. Une ligne par écriture: les factures, les coûts de personnel imputés au projet, les coûts comptabilisés avant l’arrivée de leur facture, et les avoirs. Le mois prochain, vous collez les nouvelles lignes en bas, vous réglez « Actuals through » sur le nouveau mois, et tout suit.
- Il se vérifie lui-même. Quatorze contrôles: chaque écriture a un poste de coûts connu, chaque mois clôturé a des coûts réels, le rapport donne le même total que les mois, aucun achat ne sort de sa phase, le plan tient dans la chronologie. Le résultat apparaît sur la page de garde et sur le tableau de bord.
- Il s’explique lui-même. La page de garde dit à quoi sert le classeur, comment le mettre à jour chaque mois, ce que fait chaque feuille, ce que signifient les couleurs et ce qui a changé dans chaque version. Chaque hypothèse dit d’où elle vient.
- Il s’imprime. Chaque feuille est mise en page pour le format A4, sur une page de large, et les longues répètent leurs titres sur chaque page.
Des graphiques seulement là où ils répondent à une question
Mon prompt demandait des visualisations uniquement là où elles aident à comprendre le budget ou à prendre une décision. Il y en a trois, toutes sur le Dashboard:
- Cumulative spend répond à « Sommes-nous dans les temps, et où allons-nous atterrir? ». Le plan approuvé en gris, le réel plus la prévision en bleu, les mois de prévision ombrés, le budget approuvé en pointillé au-dessus.
- What moves the forecast répond à « Pourquoi? ». Les six postes de coûts les plus éloignés de leur budget, le plus grand d’abord, plus tout le reste. Les deux demandes de changement approuvées et un prestataire Android supplémentaire expliquent l’essentiel de ce qui a consommé la réserve.
- Contingency répond à « Quelle marge reste-t-il? ». Sur la réserve de 178 000 dollars, les changements approuvés ont pris 59 500 dollars, les dépassements environ 64 000 dollars, et il reste environ 54 000 dollars.
Les couleurs des graphiques ont passé un test de daltonisme, et chaque barre porte son chiffre: la couleur n’est jamais le seul indice. Le reste du tableau de bord, ce sont des chiffres, parce qu’un chiffre isolé n’a pas besoin de graphique: six chiffres clés en haut, et un encadré avec les chiffres à apporter au prochain comité de pilotage. L’un d’eux: la réserve restante paie 0,3 mois de retard.
Le classeur se contredit lui-même
La prévision est construite de bas en haut: l’équipe, les tarifs et le plan d’aujourd’hui pour chaque mois à venir. Elle dit que le projet atterrira 54 000 dollars sous son budget.
La feuille Report pose ensuite une deuxième question: quelle part du travail prévu a réellement été faite pour l’argent dépensé? (En contrôle de projet, on appelle cela la valeur acquise.) Le responsable technique estime le développement fait à 50 %. Mesurés ainsi, les six premiers mois ont livré 86 cents de travail prévu pour chaque dollar. Si le reste du projet se déroule de la même façon, il atterrira à 2,1 millions de dollars, 171 000 dollars au-dessus du budget approuvé.
Claude Code a mis les deux sur le tableau de bord. L’un dit que le projet va bien. L’autre dit que non, si la suite ressemble aux six premiers mois. Un comité de pilotage voudrait savoir lequel croire, et pourquoi.
Comment il a été fait
Claude Code a écrit le classeur en code: un script Python dispose chaque feuille et écrit chaque formule, et les données de l’entreprise inventée se trouvent dans un fichier à part, des tarifs journaliers aux 64 écritures. LibreOffice, une suite bureautique gratuite, ouvre ensuite le fichier et le calcule.
La première chose à mettre au point, c’était l’histoire. Dans le premier jet des chiffres, le projet dépassait déjà de 108 000 dollars son budget approuvé: le développement avait glissé d’un mois, et un mois de cette équipe coûte 187 000 dollars. Claude Code a trouvé cela trop dramatique pour un projet à mi-parcours, alors il a remis le calendrier à l’heure et fait du retard l’un des boutons.
Une formule qui pointe vers la mauvaise ligne donne quand même un chiffre plausible. C’est pourquoi le même budget est calculé une deuxième fois en Python pur, et si un seul total ou un seul poste diffère, la construction s’arrête. Elle s’arrête aussi quand une cellule affiche une erreur ou quand l’un des contrôles du classeur échoue.
Ensuite, Claude Code a transformé chaque feuille en image et l’a regardée, sur plusieurs tours. Cela a révélé des problèmes qu’on ne voit qu’en regardant:
- L’ombrage de la prévision manquait dans le graphique des dépenses. LibreOffice ne dessinait rien de ce qui était placé sur la deuxième échelle cachée du graphique, alors l’ombrage se trouve maintenant sur l’échelle principale, aussi haut que le budget approuvé.
- Les étiquettes des barres affichaient des chiffres bruts comme 59,500 et un tiret égaré pour chaque zéro: LibreOffice ignorait le format de nombre propre aux étiquettes jusqu’à ce que le fichier dise explicitement de ne pas le reprendre des données.
- Une étiquette entrait en collision avec sa voisine: l’étiquette de la seule barre qui va vers la gauche empiétait sur le nom du poste de coûts. Une barre invisible lui garde maintenant de la place. Cette correction a ensuite masqué la mauvaise entrée de la légende, parce que LibreOffice semble compter les entrées depuis l’autre bout. La barre invisible se trouve désormais au milieu, ce qui donne la même entrée quel que soit le bout depuis lequel on compte.
- Du texte débordait de ses cellules, des étiquettes étaient coupées et des titres de colonnes se chevauchaient.
Pour finir, il a vérifié le fichier par rapport à la spécification du format Excel. Chacune de ses parties est conforme.
La visionneuse de cette page
Ce que vous voyez ci-dessus, c’est le classeur lui-même: ses propres cellules et formules. Cette page ne peut pas faire tourner Excel, alors Claude Code a aussi écrit un petit moteur de calcul pour elle: il lit les formules du classeur et les calcule avec les mêmes 23 fonctions, selon les règles que les tableurs appliquent aux cellules vides, au texte et aux dates. Un test compare les 3303 résultats, et le texte que chaque cellule affiche, à ceux de LibreOffice, puis compare de nouveau les résultats pour quatre jeux de saisies modifiées. Tout concorde.
Les graphiques sont la seule chose que la page dessine elle-même, à partir des mêmes cellules, couleurs et formats de nombre. Excel et LibreOffice dessinent les leurs à partir du fichier, ils peuvent donc y avoir un aspect un peu différent.
Ce qui n’est pas parfait
- Excel: rien à corriger. Excel ne tourne pas là où Claude Code travaille, alors les contrôles et les images de Claude Code ont été faits dans LibreOffice. J’ai ouvert la première version dans Excel et je n’y ai trouvé aucune erreur. Les corrections pour Google Sheets ci-dessous sont venues après.
- Google Sheets: une correction, pas encore revérifiée. Dans Google Sheets, le premier contrôle échouait. Sa formule additionnait d’un coup les écritures de tous les postes de coûts, et Google Sheets ne calcule pas cette formule comme Excel. Claude Code l’a remplacée par une formule simple par poste de coûts. Par précaution, il a aussi réécrit les règles de couleur et deux listes déroulantes qui s’appuyaient sur des cellules nommées, que Google Sheets traite autrement. Personne n’a encore ouvert la version corrigée dans Google Sheets.
- Apple Numbers: pas vérifié. Numbers ouvre les fichiers Excel, mais peut perdre la mise en page pour l’impression, la protection et une partie de la mise en forme des graphiques.
- La chronologie compte 15 mois. Un retard de plus de trois mois la dépasse. Un contrôle le signale, mais ajouter des mois veut dire ajouter des colonnes à la main.
- Le deuxième avis ne vaut que ce que vaut son estimation. « Développement fait à 50 % » est le jugement du responsable technique, et chaque chiffre de cette deuxième prévision en dépend.
- La protection est un compromis. Elle évite les accidents et agace quiconque veut réorganiser les choses. Révision > Ôter la protection de la feuille, sans mot de passe.
- Chaque chiffre est inventé. Les tarifs et les coûts sont plausibles, pas des données de marché.
- Il n’existe qu’en anglais, dans les trois versions linguistiques de cette page.
Ce que vous pouvez en retenir
- Faites de « aucun résultat saisi à la main » une règle, et testez-la. Changez une saisie et regardez si le total bouge. S’il ne bouge pas, quelqu’un l’a tapé.
- Demandez des contrôles. Un classeur qui vous dit quand il est cassé détecte des erreurs que vous ne trouveriez sinon qu’en le vérifiant à fond, et une IA écrit les contrôles aussi facilement que les formules.
- Pour chaque graphique, demandez à quelle décision il aide. Si personne ne peut le dire, laissez-le de côté.
- Remontez un chiffre jusqu’à son origine, comme la visionneuse ci-dessus vous le permet. C’est ainsi qu’on relit un classeur, quel que soit son auteur.
Ce que j'ai tapé
Mon prompt, mot pour mot
Next entry for the "What's possible" section, to complete the office set after The Blueprint (Word) and The Pitch (PowerPoint): an Excel workbook. I think most people have never seen a really well-built spreadsheet, let alone one an AI made.
Build the budget for an app development project. Use a made-up company and a realistic project that people anywhere in the world would recognise, not something Swiss. Set it mid-project, so there's a plan, actual spending so far and a forecast to compare.
It should be the kind of workbook a finance person respects and a project lead actually wants to use. Apply the best practices of good spreadsheet design and make it a working model: change an assumption and everything updates, no typed-in results. Make it aesthetically pleasant too. Add data visualizations where they help someone understand the budget or make a decision, and nowhere else.
Like the other two, offer the original file for download plus a way to look at it on the page, and check your work by actually looking at it. Don't ask me questions, fill the gaps with your best guess. This is to show off what you can do, not to fit a real project 100%. Le budget lui-même n'avait pas besoin de mon projet: l'entreprise, le projet et chaque chiffre sont de l'invention de Claude Code. Le prompt s'y appuie quand même. L'« office set », « the other two » et « a way to look at it on the page » n'avaient de sens que parce que Claude Code travaillait dans le projet de ce site et connaissait ces pages. Et « Don't ask me questions » convenait à une vitrine, pas à un budget dont vous vous servirez. La version ci-dessous demande vos chiffres et laisse l'IA poser ses questions d'abord.
Un prompt pour démarrer
Essayez vous-même
Remplissez les crochets:
Construisez un classeur Excel pour [son usage, p. ex. le budget de notre projet d'application]. Il est destiné à [qui le lit], pour décider [quoi]. Ce que je sais déjà: [le plan, les chiffres dont vous disposez, lesquels sont des estimations, ce qui a déjà été dépensé]. Faites-en un modèle qui fonctionne et qu'un financier respecterait: saisies, calculs et résultats sur des feuilles séparées, saisies bien signalées, aucun résultat tapé à la main, pour que tout se mette à jour quand je change une hypothèse. Ajoutez des contrôles qui me signalent quand quelque chose ne colle pas. Des graphiques uniquement là où ils aident à comprendre le budget ou à prendre une décision. Avant de construire quoi que ce soit, demandez-moi ce que vous avez besoin de savoir, puis proposez la structure: quelles feuilles, quelles cellules sont des saisies, ce qui est calculé et ce qui est contrôlé. Construisez-le une fois que je l'aurai validée. Ensuite, ouvrez le résultat, regardez chaque feuille et corrigez tout ce qui cloche.
Pour un budget de travail, utilisez l'assistant que votre entreprise a validé. S'il ne peut que vous répondre avec des formules dans le chat, vous n'obtiendrez pas un classeur comme celui-ci. Quel que soit l'outil, ouvrez le résultat, changez une saisie et remontez un total jusqu'à son origine.