Qu'est-ce que la fonction LET ?
Tu t'en sers dès qu'une formule s'allonge à force de répéter le même calcul ou d'empiler des cellules intermédiaires juste pour t'y retrouver. LET (en anglais aussi) t'évite ce bricolage : tu nommes chaque étape une seule fois, et le reste de la formule s'appuie dessus sans jamais la recalculer.
Concrètement, LET transforme des formules illisibles de 200 caractères en formules claires et maintenables. C'est elle qui te permet de calculer des commissions à paliers, des métriques financières comme le ROCE, ou d'optimiser les performances d'un fichier en évitant de recalculer plusieurs fois la même recherche lourde.

Comprendre chaque paramètre de la fonction LET
Excel ne t'affiche que le résultat de la toute dernière expression : les paires nom; valeur qui la précèdent travaillent en coulisses, donc ton calcul final arrive toujours en dernier. Et l'ordre compte : tva ne peut s'appuyer sur prix que si tu as défini prix au-dessus. Seuls nom1, valeur1 et le calcul final sont obligatoires ; les paires intermédiaires, elles, montent jusqu'à 126.
nom1
: le nom de ta première variableChoisis un nom court et explicite comme prix, total, ca ou donnees. Évite les espaces, les caractères spéciaux et les noms de fonctions Excel existantes.
Les noms sont sensibles à la casse en théorie, mais en pratique utilise des minuscules pour la cohérence. Un bon nom de variable te permet de comprendre ta formule en un coup d'oeil, même six mois après l'avoir écrite : c'est ta documentation intégrée.
Attention : N'utilise pas de noms qui ressemblent à des références de cellules (A1, C3). Excel pourrait les confondre et créer des comportements imprévisibles. Préfère des noms métier : prix, capital_employe, ca_annuel.
valeur1
: la valeur associée au nomElle peut être une référence de cellule (A1), une plage (A1:A100), une constante (1.2), ou une formule complexe comme SOMME.SI.ENS(A:A;B:B;"Paris").
Cette valeur est calculée une seule fois, puis réutilisée partout où tu utiliseras nom1 dans le calcul final. C'est là que LET devient précieuse pour la performance : au lieu de recalculer cinq fois la même RECHERCHEX lourde, Excel la calcule une fois et stocke le résultat.
[nom2; valeur2; ...]
: tu peux ajouter autant de paires nom/valeur que nécessaire, jusqu'à 126(facultatif)Chaque nouvelle variable peut utiliser les variables définies avant elle. Par exemple, si tu as défini prix, tu peux ensuite définir tva comme prix*0.2.
L'ordre est important : tu ne peux pas utiliser une variable avant de l'avoir définie. Pense à tes variables comme des étapes de calcul successives, chaque étape s'appuyant sur les précédentes pour construire progressivement le résultat final.
calcul
: le calcul final qui utilise toutes les variables définiesC'est ce résultat qui sera affiché dans la cellule. Tu peux utiliser n'importe quelle combinaison de tes variables ici, ou même retourner directement une variable si ton résultat final est déjà dans une variable intermédiaire.
Par exemple : =LET(x;A1*2; y;x+10; y) retourne simplement y. C'est le dernier paramètre de LET, toujours placé après toutes les paires nom/valeur.

Exemples pratiques pas à pas
Comment déclarer des variables avec la fonction LET
Tu prépares les factures du mois et chaque montant doit ressortir en TTC, TVA à 20 % comprise. Tes lignes listent le montant hors taxes et le client, et tu veux une colonne TTC qui se lise aussi facilement qu'elle se calcule. La fonction LET te laisse nommer le montant, puis la TVA, puis le total : la formule raconte alors le calcul au lieu de le cacher derrière des références de cellules.
- 1Dans une cellule, écris
=LET(. - 2En 1er argument : écris le nom
ht. C'est l'étiquette que tu poses sur le montant hors taxes, et elle t'évite de repointer la cellule chaque fois que tu réutilises ce montant plus bas. - 3En 2ᵉ argument : clique sur la cellule du montant hors taxes,
A2. C'est la valeur quehtgarde en mémoire, ici les1 200 €de la ligne de Dupont. - 4En 3ᵉ argument : écris le nom
tva. Cette deuxième étiquette attend le montant de la taxe, que tu calcules juste après. - 5En 4ᵉ argument : saisis le calcul
ht*0,2, soit 20 % du montant hors taxes. Il s'appuie surhtdéfini plus haut, car une variable ne peut utiliser que celles déclarées avant elle. - 6En 5ᵉ argument : écris le nom
ttc. Cette troisième étiquette portera le total à afficher, une fois les deux montants additionnés. - 7En 6ᵉ argument : saisis le calcul
ht+tva, qui additionne le montant hors taxes et la taxe. Ces deux variables ont déjà leur valeur, donc Excel n'a plus qu'à faire la somme. - 8En 7ᵉ argument : écris
ttccomme calcul final. C'est l'unique morceau dont Excel affiche le résultat, et la cellule sort1 440 €pour les1 200 €de Dupont. - 9Ferme la parenthèse et appuie sur Entrée. Recopiée vers le bas, la formule refait le même trajet pour chaque client.
=LET(ht; A2; tva; ht*0,2; ttc; ht+tva; ttc)ht reprend le montant de la ligne, tva en prend les 20 %, ttc additionne les deux. Seul le calcul final s'affiche (les paires du dessus travaillent sans jamais apparaître), et recopiée vers le bas, la formule refait le même trajet pour chaque client.Comment réutiliser un même calcul plusieurs fois avec la fonction LET
Le catalogue vient d'être mis à jour et certains produits se vendent maintenant moins cher qu'ils ne coûtent à l'achat. Tu as le prix de vente et le coût de chaque référence, et tu veux afficher le taux de marge, sauf quand il passe dans le rouge : là, tu préfères un « À revoir » qui saute aux yeux. Le calcul de la marge doit donc servir deux fois, une fois pour le test et une fois pour l'affichage, et c'est exactement ce que la fonction LET sait faire : tu nommes le calcul une fois, tu le réutilises autant que tu veux.
- 1Dans une cellule, écris
=LET(. - 2En 1er argument : écris le nom
marge. C'est sous ce nom qu'Excel rangera le taux de marge une fois calculé, pour le réutiliser sans jamais le refaire. - 3En 2ᵉ argument : saisis le calcul de la marge,
(B2-C2)/B2, soit le prix de vente moins le coût, rapporté au prix de vente. Excel effectue cette division une seule fois et garde le résultat sous le nommarge. - 4En 3ᵉ argument : écris le calcul final
SI(marge<0; "À revoir"; marge)et referme-le. C'est le seul morceau dont Excel affiche le résultat, et il réutilisemargedeux fois, une première dans le testmarge<0qui repère les produits vendus à perte, une seconde dans ses sorties"À revoir"quand la marge est négative etmargesinon. - 5Ferme la parenthèse de la fonction LET et appuie sur Entrée. Celle de la fonction SI a déjà été refermée à l'étape précédente.
=LET(marge; (B2-C2)/B2; SI(marge<0; "À revoir"; marge))marge, que le calcul final réutilise deux fois : d'abord pour tester si le produit part à perte, ensuite pour l'afficher quand tout va bien. Le clavier ressort à 37,8 %, la souris (vendue 19 € alors qu'elle en coûte 22 €) bascule sur « À revoir ».Comment enchaîner FILTRE et TRIER avec la fonction LET
La revue commerciale commence dans une heure et on te demande le classement des vendeurs passés au-dessus de 10 000 € de chiffre d'affaires, du plus gros au plus petit. Tes lignes contiennent le vendeur, sa région et son CA, et tu veux le filtre et le tri en une seule formule plutôt qu'en trois manipulations. La fonction LET nomme chaque étape du parcours, la colonne testée puis la liste filtrée, et le classement se déverse tout seul à côté du tableau.
- 1Dans une cellule, écris
=LET(. - 2En 1er argument : écris le nom
ca. Il désignera la colonne des chiffres d'affaires, sur laquelle va porter ton critère. - 3En 2ᵉ argument : sélectionne la colonne des chiffres d'affaires,
C2:C9. C'est le contenu quecagarde en mémoire pour la suite de la formule. - 4En 3ᵉ argument : écris le nom
retenus. Il recueillera les lignes qui passent le filtre, défini juste en dessous. - 5En 4ᵉ argument : saisis
FILTRE(A2:C9; ca>10000)et referme la fonction FILTRE. Elle garde les lignes dont le chiffre d'affaires dépasse10 000 €, et cette sélection tient tout entière dansretenus. - 6En 5ᵉ argument : écris le calcul final
TRIER(retenus; 3; -1). La fonction TRIER reprend la sélectionretenuset la classe sur sa troisième colonne, le chiffre d'affaires, en ordre décroissant grâce au-1. - 7Ferme la parenthèse de la fonction LET et appuie sur Entrée. Celle de la fonction TRIER a déjà été refermée à l'étape précédente, et le classement se déverse sur cinq lignes, de Julie Bernard (
45 000 €) à Tom Rousseau (12 900 €).
=LET(ca; C2:C9; retenus; FILTRE(A2:C9; ca>10000); TRIER(retenus; 3; -1))ca désigne la colonne testée, retenus recueille les cinq vendeurs au-dessus de 10 000 €, et le calcul final les classe du plus gros chiffre d'affaires au plus petit. Le résultat se déverse sur cinq lignes à partir de la cellule où tu saisis la formule (Julie Bernard en tête avec 45 000 €), et il se réajuste tout seul dès qu'un montant bouge.
Les erreurs fréquentes avec la fonction LET
Neuf fois sur dix tu tombes sur #NOM?, et ça pointe presque toujours un nom de variable : un espace ou un tiret dedans (prix ht), un chiffre en tête, ou un nom qui ressemble à une cellule comme A1 qu'Excel prend pour une référence. L'autre symptôme ne porte pas de code : Excel rejette la formule pour syntaxe invalide. C'est ton compte de paramètres qui est tombé pair, donc une paire nom; valeur est bancale ou le calcul final manque à l'appel.
Erreur #NOM? : nom de variable invalide
Excel refuse certains noms de variables : ceux qui contiennent des espaces, commencent par un chiffre, utilisent des caractères spéciaux, ou ressemblent à une référence de cellule. La formule =LET(prix ht;100;...) est invalide à cause de l'espace.
Solution : Utilise uniquement des lettres, chiffres et underscores, en commençant par une lettre. Noms valides : prix_ht, total2024, ca. Invalides : prix ht, 2024total, prix-ht, A1.
Nombre de paramètres incorrect : erreur de syntaxe
LET nécessite des paires nom/valeur puis un calcul final : le total doit toujours être impair. Si tu as un nombre pair de paramètres, il manque soit un nom, soit une valeur, soit le calcul final. Ça arrive souvent en ajoutant des variables en cours de route.
Solution : Compte tes paramètres : nom1, valeur1, nom2, valeur2, calcul = 5 paramètres (impair). Si tu en as 6, il en manque un. Vérifie que chaque nom a sa valeur associée et que tu as bien un calcul final comme dernier paramètre.
Utilisation d'une variable avant sa définition
Si tu essaies d'utiliser une variable dans la définition d'une variable déclarée avant elle, Excel retourne #NOM?. L'ordre de définition est strict, contrairement à certains langages de programmation.
Solution : Définis tes variables dans l'ordre logique de dépendance. Si total dépend de prix, définis prix en premier : =LET(prix;100; total;prix*1.2; total). L'inverse =LET(total;prix*1.2; prix;100; total) ne fonctionne pas.
Nom de variable identique à une référence de cellule
Si tu nommes une variable A1 ou B2, Excel confond avec une référence de cellule et crée des comportements imprévisibles ou des références circulaires difficiles à déboguer.
Solution : Utilise des noms descriptifs et métier : prix, total, donnees plutôt que A1, C3. Les noms qui ressemblent à des adresses de cellules sont à éviter systématiquement.
Oubli du calcul final
Tu définis toutes tes variables mais oublies d'indiquer à Excel quelle valeur retourner en dernier. La formule a la bonne structure mais le nombre de paramètres est pair, et Excel ne sait pas quoi afficher.
Solution : Le dernier paramètre de LET doit toujours être une expression qui produit le résultat final. Même si c'est juste un nom de variable : =LET(x;A1*2; y;x+10; y). Le y final indique à Excel ce qu'il doit retourner.

Astuces avancées avec LET
Combine LET avec LAMBDA pour des fonctions réutilisables
Si tu utilises souvent le même calcul LET dans plusieurs cellules, crée une fonction personnalisée avec LAMBDA. Tu pourras l'appeler avec des paramètres différents partout dans le classeur. Par exemple, une fonction de calcul de marge : =LAMBDA(prix;couts;LET(marge;prix-couts;taux;marge/prix;taux)). Nomme-la CalcMarge dans le gestionnaire de noms et utilise =CalcMarge(B2;C2) sur chaque ligne.
La combinaison LET + LAMBDA est le pattern le plus puissant pour les formules métier complexes que tu répètes souvent.
Utilise LET avec les tableaux dynamiques pour des transformations lisibles
LET s'associe parfaitement avec FILTRE, TRIER, UNIQUE. Tu peux nommer ton tableau source, puis appliquer des transformations successives dont chaque étape est lisible : =LET(data;A1:C100;filtre;FILTRE(data;INDEX(data;;3)>1000);trie;TRIER(filtre;2;-1);trie).
Chaque étape est claire, et tu peux facilement intervertir l'ordre des opérations ou ajouter un critère sans réécrire toute la formule.
Documente avec des noms explicites
Dans Excel, les noms de variables sont ta seule documentation interne. Utilise taux_conversion plutôt que tc, ca_total plutôt que t. Adopte une convention (snake_case ou camelCase) et tiens-t'y dans tout le classeur.
Un nom descriptif fait toute la différence quand un collègue doit auditer ta formule ou que tu la relis six mois plus tard.

LET vs LAMBDA vs SI vs cellules intermédiaires
Tant que ton calcul ne sert qu'à une seule cellule, LET suffit : il nomme tes valeurs localement et n'affiche que le résultat. Le jour où tu veux rappeler ce même calcul partout dans le classeur, emballe-le dans LAMBDA ; et si ton fichier doit tourner ailleurs que sur Excel 365 ou 2024, reviens aux cellules intermédiaires, les seules à passer sur toutes les versions.
Face à un SI imbriqué, le départage se joue à la vitesse : LET calcule chaque valeur une fois et la garde, là où SI relance le même calcul dans chaque branche.
| Critère | LET | LAMBDA | SI | Cellules intermédiaires |
|---|---|---|---|---|
| Usage principal | Variables dans une formule | Fonctions personnalisées réutilisables | Logique conditionnelle simple | Calculs en plusieurs étapes |
| Portée | Locale à la formule | Tout le classeur (si nommée) | Locale à la formule | Feuille de calcul |
| Lisibilité | Excellente (noms explicites) | Excellente (nom de fonction) | Moyenne si imbriqués | Bonne (valeurs visibles) |
| Performance | Calcul unique par variable | Calcul unique par appel | Répète les calculs | Calcul unique mais dispersé |
| Compatibilité | Excel 365 / 2024 uniquement | Excel 365 / 2024 uniquement | Toutes versions | Toutes versions |
Questions fréquentes
LET améliore la lisibilité et optimise les performances. Quand tu calcules une valeur une fois et que tu la réutilises plusieurs fois dans la formule, Excel ne la recalcule pas à chaque fois. C'est particulièrement utile pour les formules lourdes avec des RECHERCHEX ou des SOMME.SI.ENS sur de grands volumes.
Tu peux définir jusqu'à 126 paires nom/valeur dans une seule formule LET. En pratique, tu utiliseras rarement plus de 5 à 10 variables. Au-delà, il vaut mieux diviser ton calcul en plusieurs cellules intermédiaires pour garder le fichier maintenable.
Oui, Google Sheets supporte LET avec exactement la même syntaxe. C'est une des rares fonctions avancées complètement compatibles entre les deux outils, ce qui facilite le travail sur des fichiers partagés entre Excel et Google Sheets.
Oui, c'est même un des grands avantages de LET. Tu peux définir une variable qui utilise les variables définies avant elle : =LET(prix;100;tva;prix*0.2;total;prix+tva;total). Chaque variable peut s'appuyer sur celles déclarées au-dessus d'elle.
Pour aller plus loin
Continue sur ta lancée après la fonction LET : la leçon associée, un modèle prêt à l'emploi et le guide pour progresser.
Tout voir



