En bref —
LETdéclare des variables nommées à l'intérieur d'une seule formule :=LET(nom1, valeur1, nom2, valeur2, …, résultat). Les noms vont par paires, le résultat est toujours le dernier argument, et Excel ne calcule chaque valeur nommée qu'une seule fois — LET est donc à la fois plus lisible et plus rapide que de répéter une sous-expression. Excel 365 et 2021+.
=LET(revenue, B2, cost, C2, margin, (revenue-cost)/revenue, margin)
=LET(total, SUMIF(A:A,G1,B:B), IF(total>0, total, "none")) ' parcourt la colonne une fois, pas deux
Une longue formule Excel, c'est un mini-programme sans variables : chaque valeur
calculée à la volée, souvent plus d'une fois, et rien qui porte de nom. LET ajoute
les premières lignes qui manquaient à ce programme : un endroit pour déclarer vos
variables avant de les utiliser. Le gain est double : une formule que vous pouvez
lire, et qui tourne souvent plus vite.
Ce que vous allez apprendre
- Le modèle mental qui fait tilter avec LET : le haut d'une fonction, là où vous déclarez vos variables
- La seule règle qui casse LET : les noms par paires, le calcul en dernier — et l'erreur que vous obtenez quand vous l'oubliez
- Pourquoi LET est un outil de performance, pas seulement de lisibilité (chaque valeur calculée une fois)
- Quand sortir LET — et les pièges de nommage (
A1n'est pas un nom valide)
Le modèle mental : LET, c'est là où vous déclarez vos variables
Pensez à l'ouverture de n'importe quelle fonction dans un vrai langage de
programmation : vous nommez quelques éléments, puis vous les utilisez. LET apporte
ça dans une cellule. La structure ne change jamais — des paires nom/valeur, puis un
calcul final qui les utilise :
=LET(nom1, valeur1, nom2, valeur2, calcul)
Vous le lisez de haut en bas : « que rate vaille 0,2, que net vaille A2-B2, puis
renvoie net * rate. » Une fois que vous voyez LET comme des déclarations suivies
d'un résultat, trois choses en découlent :
- Un nom que vous définissez peut être réutilisé autant de fois que vous voulez dans le calcul final — mais Excel n'en évalue la valeur qu'une fois.
- Les noms se construisent de haut en bas : un nom plus loin peut référencer un nom précédent, jamais l'inverse.
- Le dernier argument est la réponse. Tout ce qui le précède vient par paires nom/valeur.
La règle qui casse LET : les paires, puis le résultat
C'est de loin l'erreur de LET la plus fréquente. Chaque argument avant le dernier doit être une paire nom/valeur. Comptez-les : nom, valeur, nom, valeur, …, résultat. Un nombre pair d'arguments avant le calcul, puis un calcul pour terminer.
=LET(x, 10, y, 20, x+y) ' deux paires, puis le résultat -> 30
=LET(x, 10, y, 20) ' pas de calcul final -> renvoie 20, pas ce que vous vouliez
=LET(x, 10, x*2, y, x+y) ' "x*2" est lu comme un nom -> erreur
Si votre LET renvoie un nombre qui ressemble à l'une de vos entrées, vous avez
presque à coup sûr oublié le calcul final et Excel vous a rendu votre dernière
valeur. Si vous obtenez #VALUE! ou #NAME?, c'est probablement que vous avez mis
le calcul au milieu ou utilisé un nom invalide.
Pièges de nommage :
- Un nom ne peut pas ressembler à une référence de cellule —
A1,R2,Q4sont tous rejetés. Utilisezqtr4, pasQ4. - Les noms ne peuvent pas contenir d'espaces ni commencer par un chiffre.
- Un nom peut référencer des noms précédents mais pas lui-même ni un nom plus loin — déclarez dans l'ordre dont vous avez besoin.
Pourquoi LET est en réalité un outil de performance
La lisibilité est le gain évident. Le gain caché, c'est la vitesse. Excel évalue chaque valeur nommée une seule fois, peu importe le nombre de fois où vous la référencez. Comparez :
=IF(SUMIF(A:A,G1,B:B)>0, SUMIF(A:A,G1,B:B), "none")
Ce SUMIF (SOMME.SI) sur une colonne entière s'exécute deux fois. Sur une grande
feuille avec des centaines de formules de ce type, cela double le travail.
Enveloppez-le une seule fois :
=LET(total, SUMIF(A:A,G1,B:B), IF(total>0, total, "none"))
Maintenant le parcours de la colonne n'a lieu qu'une fois. C'est la vraie raison pour laquelle les utilisateurs avancés enveloppent les sous-expressions répétées dans un LET — pas la propreté, mais la division par deux (ou plus) du temps de recalcul. La règle empirique : si une sous-expression apparaît plus d'une fois dans votre formule, sa place est dans un LET.
Nommez vos étapes dans une chaîne de tableaux dynamiques
LET brille à l'intérieur des formules à déversement modernes. Nommer chaque étape transforme un emboîtement opaque en quelque chose que vous pouvez lire — et déboguer ligne par ligne :
=LET(
data, FILTER(Sales, Sales[Region]="West"),
top, SORT(data, 3, -1),
TAKE(top, 5)
)
Chaque nom est un point de contrôle : sélectionnez data dans la barre de formule et
appuyez sur F9 pour ne voir que cette étape. Combiné à
FILTER (FILTRE),
SORT (TRIER) et
TAKE (PRENDRE), LET est ce qui garde une requête
en cinq étapes honnête.
Le verdict : LET reste dans une cellule — au-delà, vous voulez LAMBDA
| Situation | À utiliser | Pourquoi |
|---|---|---|
| Une sous-expression se répète dans une formule | LET | Calculé une fois, pas N fois |
| Une formule imbriquée illisible | LET | Nommez les étapes ; déboguez chaque ligne |
| Vous réutiliserez la logique dans d'autres cellules ou classeurs | LAMBDA | LET est propre à une formule ; LAMBDA est appelable |
| Une formule triviale en une étape | Aucun | LET ajoute du bruit sans contrepartie |
LET vit à l'intérieur d'une seule formule. Dès l'instant où vous voulez appeler la
même logique depuis plusieurs cellules — ou depuis un autre classeur — vous avez
dépassé LET et vous voulez LAMBDA. De fait, le corps de
presque tout bon LAMBDA est un LET. Ne sortez pas LET non plus pour une formule en une
étape ; nommer =A1*2 n'aide personne.
Comment ExcelMaster vous aide
LET, c'est là où les formules Excel commencent à se lire comme du code — et le code, c'est exactement ce qu'un copilote IA sait écrire. ExcelMaster prend une longue formule imbriquée et illisible et la refactorise en un LET propre avec des étapes nommées, directement dans Excel — et il repère la sous-expression répétée qui ne devrait être calculée qu'une fois. Décrivez le calcul en langage courant et il vous renvoie le LET, noms inclus. Essayez-le sur vos propres données.
Foire aux questions
À quoi sert la fonction LET dans Excel ?
LET déclare des variables nommées à l'intérieur d'une seule formule, vous permettant
d'écrire =LET(nom, valeur, …, résultat) au lieu de répéter des sous-expressions.
Cela rend la formule lisible et ne calcule chaque valeur nommée qu'une seule fois.
Pourquoi ma formule LET renvoie-t-elle la mauvaise valeur ?
Presque toujours parce que le dernier argument n'est pas votre calcul. Tout ce qui
précède l'argument final doit être des paires nom/valeur ; l'argument final est le
résultat. =LET(x,10,y,20) renvoie 20 parce qu'il n'y a aucun calcul après les
paires.
LET accélère-t-il les formules ?
Oui, quand une sous-expression se répète. Excel évalue chaque valeur nommée une fois,
donc =LET(t, SUMIF(A:A,G1,B:B), IF(t>0,t,0)) parcourt la colonne une seule fois au
lieu de deux. Sur de grandes feuilles, c'est un vrai gain de vitesse, pas seulement un
texte plus propre.
Pourquoi est-ce que j'obtiens une erreur #NAME? dans LET ?
Vous avez utilisé un nom invalide. Les noms ne peuvent pas ressembler à une référence
de cellule (A1, Q4), ne peuvent pas contenir d'espaces, ni commencer par un
chiffre. Renommez en qtr4, rate ou net_sales.
Quelles versions d'Excel prennent en charge LET ?
LET est présent dans Excel 2021, Excel 2024 et Microsoft 365 pour Windows et Mac.
Il n'est pas disponible dans Excel 2016 ni 2019.
Testé dans
Testé dans : Excel 365 (Windows 11) – dernière vérification le 22/06/2026.
Guides associés : Excel LAMBDA · Excel MAP, REDUCE et BYROW · Excel FILTER · Excel SORT
