Aller au contenu
Outils & Comparatifs IA

IA sur fichiers Excel : RAG, SQL ou agent, lequel marche

Une PME a ses tarifs, stocks et planning dans Excel et veut les interroger en langage naturel. RAG, conversion SQL ou agent avec outils : comparatif chiffré, et les cas où il faut sortir d'Excel.

Adam Douss
Adam Douss

Ingénieur IA, JUWA

22 octobre 20268 min de lecture
IA sur fichiers Excel : RAG, SQL ou agent, lequel marche

Résumer avec

Pour interroger des fichiers Excel en langage naturel, l'approche qui donne des chiffres justes est l'agent équipé d'un outil qui lit le classeur par plage et calcule en code, pas le RAG. Le passage en base SQL vient en deuxième position, uniquement quand le classeur est déjà une table propre, et le RAG sur fichiers Excel ne sert qu'à retrouver un onglet ou un commentaire, jamais à sortir un total.

Le cas type : une PME de 40 à 200 personnes tient ses tarifs, ses stocks, le planning et le suivi commercial dans une dizaine de classeurs partagés. Le dirigeant veut poser la question « quelle marge sur la gamme X en août » sans ouvrir trois fichiers.

Pourquoi un RAG répond à côté quand on lui donne un classeur Excel ?

Parce qu'un RAG découpe le fichier en morceaux de texte, et qu'un tableau perd son sens dès qu'on le coupe. La ligne 412 sans son en-tête est une suite de nombres. La cellule fusionnée qui titrait la colonne sur trois lignes disparaît. La formule SOMME(D2:D400) devient soit sa valeur figée au moment de l'export, soit une chaîne de caractères sans intérêt.

Une contrôleuse de gestion relit une feuille de calcul imprimée dans un bureau

Le modèle reçoit ensuite les cinq ou dix morceaux les plus proches de la question et tente une addition mentale sur des fragments. Il produit un chiffre plausible, présenté avec assurance, souvent faux. Sur FinSheet-Bench (mars 2026), les trois meilleurs modèles du marché atteignent 93,6 % sur des recherches simples dans des feuilles financières, et tombent à 33,3 % sur les agrégations en plusieurs étapes. Les auteurs concluent qu'aucun modèle seul n'atteint un taux d'erreur compatible avec un usage financier non supervisé.

Le RAG garde une utilité. Il retrouve très bien « le fichier où on a noté les conditions de remise du client Durand ». On l'utilise pour localiser, jamais pour calculer. Notre guide de préparation d'une base documentaire pour le RAG détaille ce qui se prête au découpage, et Excel n'en fait pas partie.

Convertir le classeur en base et générer du SQL, ça marche dans quels cas ?

Quand le classeur est en réalité une base de données qui s'ignore. Un onglet, une ligne d'en-tête, un enregistrement par ligne, pas de sous-totaux intercalés, pas de couleurs porteuses de sens. Dans ce cas, on charge le fichier dans SQLite, DuckDB ou Postgres, le modèle génère une requête, la base l'exécute, et le chiffre est exact parce que c'est le moteur SQL qui a additionné, pas le modèle.

Le problème se déplace alors vers la génération de la requête. Sur des schémas simples, le text-to-SQL fonctionne bien. Sur des schémas réels d'entreprise, les résultats chutent. Le benchmark Spider 2.0 (novembre 2024, 632 tâches tirées de vrais entrepôts de données) donne 21,3 % de réussite à un modèle qui obtient 91,2 % sur l'ancien Spider 1.0. La différence tient aux colonnes mal nommées, aux jointures entre onglets et aux conventions métier que personne n'a écrites. Nous avons documenté ces modes d'échec dans notre analyse des limites du text-to-SQL en entreprise.

Le point qui fait mal en PME, c'est la maintenance. Un contrôleur de gestion insère une colonne « remarques » en C, tout le chargement décale. Une ligne de total ajoutée en bas devient un enregistrement fantôme. Il faut un script d'import qui vérifie les en-têtes à chaque exécution et refuse le fichier s'ils ont bougé. Sans ce garde-fou, la base se remplit de données fausses en silence, ce qui est pire qu'une panne.

Que change un agent qui exécute des opérations sur le classeur ?

Il change le lieu du calcul. L'agent ne lit pas le fichier comme un texte, il reçoit des outils : lister les onglets, lire une plage, agréger. Face à « quelle marge sur la gamme X en août », il lit l'onglet Ventes, filtre sur la date, calcule en Python, puis répond avec le chiffre et la plage utilisée. On peut vérifier.

Deux façons de brancher ces outils. La première, un appel de fonction propriétaire dans l'application : simple, mais lié à un fournisseur de modèle. La deuxième, un serveur exposé via le Model Context Protocol, standard ouvert d'Anthropic que Claude, ChatGPT, VS Code et Cursor savent consommer. Le même serveur qui expose « lire une plage » à un agent maison sert ensuite à un assistant de bureau sans rien réécrire. Pour le raisonnement complet entre les deux architectures, voir MCP ou RAG, comment choisir.

Côté fiabilité, l'agent gagne sur les agrégations parce qu'il ne calcule jamais lui-même. Il reste faillible sur le choix de la plage : lire l'onglet 2025 au lieu de 2026, oublier une feuille cachée. SpreadsheetBench 2 (juin 2026), qui évalue des agents sur 321 flux de travail multi-onglets, plafonne le meilleur agent à 34,89 % de tâches réussies de bout en bout. Ces tâches demandent en moyenne 593 modifications de cellules, loin d'une question de reporting, mais le chiffre remet les promesses commerciales à leur place. En production, on limite les outils à la lecture et à l'agrégation, on interdit l'écriture dans le classeur source, et on affiche toujours la plage lue à côté du chiffre.

Quel type de fichier appelle quelle approche ?

Le tableau ci-dessous résume les arbitrages qu'on fait en cadrage. Les efforts sont des ordres de grandeur constatés en PME, pas des devis.

Type de fichierApproche recommandéePourquoiEffort et maintenance
Un onglet plat, une ligne d'en-tête, mis à jour chaque semaine (suivi commercial, export CRM)Import en base et SQL généréLe fichier est déjà une table, le moteur SQL fait le calculFaible au départ, script de contrôle des en-têtes obligatoire
Classeur multi-onglets avec formules croisées et sous-totaux (grille tarifaire, budget)Agent avec outils de lecture par plageLa structure porte du sens que l'import à plat détruitMoyen, deux à quatre semaines, peu de maintenance si les outils sont génériques
Planning avec cellules fusionnées, couleurs et commentairesAgent, après reconstruction d'une table intermédiaireLes couleurs et fusions ne sont lisibles que par du code dédiéÉlevé, souvent le signal qu'il faut changer d'outil
Dossier de dizaines de fichiers hétérogènes, questions de type « où est »RAG sur les métadonnées et les textes, pas sur les chiffresOn cherche un fichier, on ne calcule rienFaible, mais aucune promesse sur les montants
Fichier de 200 000 lignes et plus, alimenté par plusieurs personnesSortir d'Excel vers une base de donnéesExcel n'est plus le bon contenant, quelle que soit l'IA posée dessusProjet data classique, l'IA vient après

Une remarque sur les outils grand public. Copilot dans Excel ou l'analyse de fichiers de ChatGPT, qui repose sur Code Interpreter et exécute du Python dans un conteneur qui expire après 20 minutes d'inactivité, relèvent de la troisième approche. Ils sont très bons pour une analyse ponctuelle sur un fichier qu'on vient de déposer. Ils ne savent pas surveiller un dossier, appliquer des droits par utilisateur ni garder une trace des réponses. Pour un usage d'équipe, on construit.

Qui voit quoi : comment gérer les droits sur des fichiers Excel interrogés par une IA ?

La sécurité se règle au niveau des outils, pas du modèle. Les salaires figurent parfois dans un onglet masqué du fichier planning, et un assistant qui lit tout le fichier pour tout le monde les expose au premier qui pose la bonne question.

Avec un RAG, le filtrage par utilisateur se fait sur les morceaux indexés, et un onglet masqué se retrouve indexé comme les autres. Avec une base SQL, on s'appuie sur les droits du moteur, ce qui est solide à condition d'avoir prévu une vue par profil. Avec un agent, chaque outil reçoit l'identité de l'utilisateur et refuse les plages non autorisées, ce qui donne le contrôle le plus fin et la trace la plus lisible. On journalise la question, l'outil appelé, la plage lue et la réponse. Le jour où un chiffre est contesté, on sait d'où il vient.

Sur l'hébergement, si les classeurs contiennent des données personnelles ou des prix négociés, le traitement reste en France ou en Europe.

Quand faut-il arrêter de mettre de l'IA sur Excel et changer d'outil ?

Dès que le classeur est modifié par plusieurs personnes en même temps, dépasse la centaine de milliers de lignes ou sert de référence à d'autres fichiers par liaison. À ce stade, l'IA ne répare rien. Elle fournit des réponses justes sur une donnée qui, elle, est déjà fausse ou périmée. Le bon investissement est une base de données et une chaîne d'alimentation, puis un agent branché dessus.

Le cas KAPIMS Pharma montre ce passage. L'équipe consolidait chaque mois 12 sources de données à la main pour produire son reporting. La collecte et la consolidation ont été automatisées, avec des tableaux de bord en temps réel, et 90 % du temps de reporting a été rendu aux équipes. La question en langage naturel devient facile une fois que la donnée est au bon endroit.

On déconseille en revanche de forcer une PME à abandonner Excel pour un fichier qui marche. Une grille tarifaire de 300 lignes tenue par une personne, mise à jour deux fois par an, se lit très bien par un agent. Le changement d'outil coûte plus que le gain.

Comment JUWA met en place l'interrogation de vos fichiers Excel

On commence par un inventaire court des classeurs, quelques jours suffisent. Chaque fichier est classé selon le tableau ci-dessus, avec son propriétaire, sa fréquence de mise à jour et les questions réellement posées dessus. Une bonne partie des classeurs n'a pas besoin d'IA mais d'un import en base, et on le dit.

Pour les fichiers qui le justifient, on développe un serveur MCP branché sur vos données, avec des outils de lecture par plage, d'agrégation et de recherche, des droits par utilisateur et un journal des appels. La première version part en production en 4 à 8 semaines, avec une validation humaine sur les réponses chiffrées tant que le taux d'erreur n'est pas mesuré, et un point hebdomadaire avec un chef de projet joignable en direct. Quand l'inventaire montre que le vrai sujet est le contenant, on le dit dès le cadrage, et le projet devient un projet de données avant d'être un projet d'IA.

FAQ

Questions fréquentes

L'essentiel de cet article, repris en questions-réponses.

Oui, pour une analyse ponctuelle. ChatGPT et Claude exécutent du Python sur un fichier déposé dans la conversation et calculent correctement des totaux ou des filtres. Ils ne surveillent pas un dossier partagé, n'appliquent pas de droits par utilisateur et ne conservent pas de trace des réponses. Pour un usage d'équipe récurrent, il faut un agent ou un serveur MCP branché sur les fichiers.

Parce qu'un modèle de langage ne calcule pas, il prédit du texte. Quand il lit un tableau découpé en fragments, il additionne de tête et se trompe sur les agrégations en plusieurs étapes, avec un taux de réussite autour de 33 % sur les benchmarks financiers de 2026. La solution est de faire faire le calcul par un moteur SQL ou par du code Python, et de réserver le modèle à la compréhension de la question.

Seulement si le fichier est déjà une table plate, avec une ligne d'en-tête et un enregistrement par ligne. Dans ce cas, l'import en base puis une requête SQL générée donne des chiffres exacts. Un classeur avec des onglets liés, des sous-totaux ou des cellules fusionnées perd son sens à l'import et se traite mieux par un agent qui lit le fichier par plage.

Comptez quelques jours d'inventaire des classeurs, puis 4 à 8 semaines pour une première version en production avec un serveur d'outils, des droits par utilisateur et un journal des réponses. Le délai s'allonge quand les fichiers sont modifiés par plusieurs personnes ou dépassent la centaine de milliers de lignes, parce que le projet devient d'abord un projet de base de données.

Partager

Adam Douss
Adam Douss

Ingénieur IA, JUWA

Heineken
BlaBlaCar
DataBird
HelloSafe

Un projet IA en tête ? Parlons-en