Aller au contenu principal

Qu'est-ce que la fonction LET ?

Définition
La fonction LET permet de définir des variables nommées à l'intérieur d'une formule. Chaque variable est calculée une seule fois, puis réutilisée dans le calcul final, ce qui améliore la lisibilité et les performances.

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.

Syntaxe

=LET(nom1; valeur1; [nom2; valeur2; ...]; calcul)

Clique sur un argument pour aller à son explication.

LET est disponible uniquement dans Excel 365 et Excel 2024. Le nombre total de paramètres doit toujours être impair : des paires nom/valeur, puis le calcul final.

Lucas, la mascotte du Dojo, inspecte les arguments de la fonction à la loupe

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.

1

nom1

: le nom de ta première variable

Choisis 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.

2

valeur1

: la valeur associée au nom

Elle 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.

3

[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.

4

calcul

: le calcul final qui utilise toutes les variables définies

C'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.

Le conseil du pro
Quand une formule LET ne donne pas le résultat attendu, remplace le calcul final par le nom d'une variable intermédiaire pour afficher sa valeur. C'est ta façon de poser un point d'arrêt et de vérifier chaque étape du calcul.
Lucas, la mascotte du Dojo, fait une démonstration pas à pas de la fonction dans Excel

Exemples pratiques pas à pas

Exemple 1

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.

Les étapes
  1. 1
    Dans une cellule, écris =LET(.
  2. 2
    En 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.
  3. 3
    En 2ᵉ argument : clique sur la cellule du montant hors taxes, A2. C'est la valeur que ht garde en mémoire, ici les 1 200 € de la ligne de Dupont.
  4. 4
    En 3ᵉ argument : écris le nom tva. Cette deuxième étiquette attend le montant de la taxe, que tu calcules juste après.
  5. 5
    En 4ᵉ argument : saisis le calcul ht*0,2, soit 20 % du montant hors taxes. Il s'appuie sur ht défini plus haut, car une variable ne peut utiliser que celles déclarées avant elle.
  6. 6
    En 5ᵉ argument : écris le nom ttc. Cette troisième étiquette portera le total à afficher, une fois les deux montants additionnés.
  7. 7
    En 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.
  8. 8
    En 7ᵉ argument : écris ttc comme calcul final. C'est l'unique morceau dont Excel affiche le résultat, et la cellule sort 1 440 € pour les 1 200 € de Dupont.
  9. 9
    Ferme la parenthèse et appuie sur Entrée. Recopiée vers le bas, la formule refait le même trajet pour chaque client.
Au final, ta formule devrait ressembler à ça :=LET(ht; A2; tva; ht*0,2; ttc; ht+tva; ttc)
Explication
La fonction LET garde chaque valeur nommée en mémoire le temps de la formule : 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.
Exemple 2

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.

Les étapes
  1. 1
    Dans une cellule, écris =LET(.
  2. 2
    En 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.
  3. 3
    En 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 nom marge.
  4. 4
    En 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éutilise marge deux fois, une première dans le test marge<0 qui repère les produits vendus à perte, une seconde dans ses sorties "À revoir" quand la marge est négative et marge sinon.
  5. 5
    Ferme 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.
Voici la formule que tu obtiens à la fin :=LET(marge; (B2-C2)/B2; SI(marge<0; "À revoir"; marge))
Explication
Ici, la fonction LET exécute la division une seule fois et range le résultat sous le nom 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 ».
Exemple 3

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.

Les étapes
  1. 1
    Dans une cellule, écris =LET(.
  2. 2
    En 1er argument : écris le nom ca. Il désignera la colonne des chiffres d'affaires, sur laquelle va porter ton critère.
  3. 3
    En 2ᵉ argument : sélectionne la colonne des chiffres d'affaires, C2:C9. C'est le contenu que ca garde en mémoire pour la suite de la formule.
  4. 4
    En 3ᵉ argument : écris le nom retenus. Il recueillera les lignes qui passent le filtre, défini juste en dessous.
  5. 5
    En 4ᵉ argument : saisis FILTRE(A2:C9; ca>10000) et referme la fonction FILTRE. Elle garde les lignes dont le chiffre d'affaires dépasse 10 000 €, et cette sélection tient tout entière dans retenus.
  6. 6
    En 5ᵉ argument : écris le calcul final TRIER(retenus; 3; -1). La fonction TRIER reprend la sélection retenus et la classe sur sa troisième colonne, le chiffre d'affaires, en ordre décroissant grâce au -1.
  7. 7
    Ferme 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 €).
Une fois les morceaux assemblés, ta formule donne ça :=LET(ca; C2:C9; retenus; FILTRE(A2:C9; ca>10000); TRIER(retenus; 3; -1))
Explication
La formule avance en trois temps nommés : 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.
Lucas, la mascotte du Dojo, l'air gêné face à une erreur Excel

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.

Lucas, la mascotte du Dojo, avec une ampoule, partage des astuces avancées

Astuces avancées avec LET

1Astuce

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.

2Astuce

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.

3Astuce

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.

Lucas, la mascotte du Dojo, compare deux fonctions Excel

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èreLETLAMBDASICellules intermédiaires
Usage principalVariables dans une formuleFonctions personnalisées réutilisablesLogique conditionnelle simpleCalculs en plusieurs étapes
PortéeLocale à la formuleTout le classeur (si nommée)Locale à la formuleFeuille de calcul
LisibilitéExcellente (noms explicites)Excellente (nom de fonction)Moyenne si imbriquésBonne (valeurs visibles)
PerformanceCalcul unique par variableCalcul unique par appelRépète les calculsCalcul unique mais dispersé
CompatibilitéExcel 365 / 2024 uniquementExcel 365 / 2024 uniquementToutes versionsToutes versions
Le savais-tu ?
LET fonctionne à l'identique dans Google Sheets, avec exactement la même syntaxe. C'est l'une des rares fonctions avancées totalement compatibles entre les deux outils, pratique pour un fichier partagé entre Excel et Sheets.
FAQ

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.

Ressources

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