Bureautique & Productivité

Excel : la fonction LET pour des formules lisibles et 10× plus rapides

11 min de lecture

Pourquoi LET est l’innovation Excel la plus sous-estimée

La fonction LET, introduite en 2020 et aujourd’hui disponible dans toutes les éditions Microsoft 365, permet de nommer des sous-calculs à l’intérieur d’une formule. Concrètement, elle transforme une formule illisible de 200 caractères en un bloc structuré, commenté mentalement, et surtout beaucoup plus rapide à exécuter car Excel ne recalcule chaque sous-expression qu’une seule fois.

Si vous avez déjà écrit une formule du type =SI(RECHERCHEV(A2;Base;3;FAUX)>1000; RECHERCHEV(A2;Base;3;FAUX)*0,9; RECHERCHEV(A2;Base;3;FAUX)), vous avez fait trois recherches identiques pour rien. LET résout ce problème de façon élégante.

Syntaxe et logique de LET

La syntaxe est la suivante :

=LET(nom1; valeur1; nom2; valeur2;... ; calcul_final)

Vous déclarez par paires (nom + valeur), puis le dernier argument est le calcul qui utilise ces noms. Exemple minimal :

=LET(x; 5; y; 3; x*y+x)

Renvoie 20. Lisible, rapide, explicite.

Étape 1 : refactorer une formule existante avec LET

Reprenons notre exemple de RECHERCHEV répétée. Version classique :

=SI(RECHERCHEV(A2;Base;3;FAUX)>1000; RECHERCHEV(A2;Base;3;FAUX)*0,9; RECHERCHEV(A2;Base;3;FAUX))

Version LET :

=LET(valeur; RECHERCHEV(A2;Base;3;FAUX); SI(valeur>1000; valeur*0,9; valeur))

Sur 10 000 lignes, la version LET est environ 3 fois plus rapide car la recherche est effectuée une seule fois.

Étape 2 : cas pratique calcul de commission commerciale multi-paliers

Une équipe commerciale a la grille suivante : moins de 5 millions FCFA = 2%, entre 5 et 15M = 4%, au-delà = 6%. Formule LET :

=LET(ca; B2; taux; SI(ca<5000000;0,02; SI(ca<=15000000;0,04;0,06)); ca*taux)

Les deux sous-variables ca et taux rendent la logique transparente pour un auditeur ou un collègue qui reprend le classeur.

Étape 3 : LET imbriquées pour calculs complexes

Une analyse financière de rentabilité peut chaîner plusieurs étapes :

=LET(
ca; SOMME(Ventes[Montant]);
cout; SOMME(Couts[Total]);
marge_brute; ca-cout;
taux_marge; marge_brute/ca;
SI(taux_marge>0,3; "Performant"; SI(taux_marge>0,15; "Acceptable"; "Critique")))

Chaque ligne documente une étape du raisonnement. Ce niveau de lisibilité est inaccessible avec les formules traditionnelles.

Étape 4 : combiner LET et LAMBDA

LET s’utilise aussi à l’intérieur d’une LAMBDA pour découper un gros calcul :

=LAMBDA(montant_ht;
LET(tva; montant_ht*0,18;
ttc; montant_ht+tva;
arrondi; ARRONDI(ttc;0);
arrondi))

Nommez cette LAMBDA FactureTTC et utilisez-la partout dans le classeur.

Étape 5 : 10 cas d’usage business avec LET

  1. Rapprochement bancaire : comparer montant attendu vs montant reçu avec tolérance de change
  2. Scoring client RFM : calculer Récence, Fréquence, Montant et combiner en score unique
  3. Gestion de stock : quantité disponible = stock physique moins réservations moins commandes en attente
  4. Prix dynamique : application de remises en cascade (volume + fidélité + promo)
  5. Analyse de variance : écart budget vs réel en valeur absolue et en pourcentage
  6. Calcul de paie : brut, cotisations, IR, net dans une seule formule
  7. Notation fournisseurs : pondération délai + qualité + prix avec bonus volume
  8. Planification financière : VAN et TRI simplifiés
  9. Contrôle qualité : limites de contrôle supérieure et inférieure avec écart-type
  10. Reporting tableau de bord : KPI composites et seuils d’alerte colorés

Étape 6 : gain de performance mesurable

Sur un fichier de 50 000 lignes contenant 3 formules imbriquées RECHERCHEV, le recalcul complet passe de 42 secondes à 6 secondes après refactoring LET. Sur un modèle financier avec 200 formules complexes, le passage à LET réduit le temps de recalcul de 18 minutes à 3 minutes. Ces gains sont cumulatifs : chaque interaction future est plus fluide.

Étape 7 : bonnes pratiques de nommage

Règles pour des noms LET clairs :

  • Utilisez des noms explicites : taux_tva plutôt que t
  • Respectez le snake_case pour la cohérence
  • Limitez à 7 variables maximum par LET (au-delà, refactorez)
  • Ordonnez logiquement : données brutes, transformations, agrégations, résultat
  • Évitez les mots réservés Excel : pas de nom identique à une fonction existante

Étape 8 : pièges courants

Piège 1 : oublier un point-virgule entre nom et valeur. Excel refuse la formule avec un message peu explicite.

Piège 2 : tenter d’utiliser un nom avant de l’avoir déclaré. LET est séquentiel, l’ordre compte.

Piège 3 : compatibilité. LET fonctionne sur Microsoft 365 et Excel 2021+, mais pas sur Excel 2019 et antérieurs. Documentez cette dépendance.

Piège 4 : sur des fichiers partagés via OneDrive avec co-auteurs en versions différentes, les formules LET apparaissent en #NOM? chez ceux qui ne les supportent pas.

Conclusion

LET n’ajoute pas de nouvelle fonctionnalité de calcul : elle améliore la manière d’écrire vos formules. Résultat : des classeurs plus lisibles, plus rapides, plus maintenables. Associez systématiquement LET à vos LAMBDA pour un code Excel de niveau professionnel. Prochaine étape : Power Query pour manipuler des volumes de données sans effort.

Voir aussi

Pourquoi LET change la donne pour vos formules Excel

Pour un comptable a Dakar, un controleur de gestion a Abidjan ou un analyste financier a Douala, les longues formules Excel sont une plaie : on calcule le meme bout d’expression 5 fois, on ne sait plus ce que la formule fait apres une semaine, et le moindre changement oblige a editer 12 endroits. La fonction LET (disponible dans Microsoft 365 et Excel 2021) resout ces trois problemes d’un coup en permettant de nommer des sous-expressions et de les reutiliser dans la formule principale.

Resultat concret : des formules 30 a 60 % plus courtes, jusqu’a 10 fois plus rapides quand un meme calcul couteux etait repete, et lisibles meme apres des mois. Ce tutoriel pas-a-pas montre la syntaxe, 5 cas d’usage reels et les pieges a eviter.

Etape 1 : Comprendre la syntaxe de LET

La syntaxe de LET alterne nom/valeur autant de fois que necessaire, puis termine par le calcul final. La forme generale est : =LET(nom1; valeur1; nom2; valeur2; …; calcul_final)

Un exemple minimal : =LET(prix; 50000; tva; 18%; prix * (1 + tva)). Excel cree localement les variables prix et tva, puis renvoie 59000. Ces variables n’existent que dans la formule, elles ne polluent pas le classeur.

Etape 2 : Eviter les calculs repetes (gain de performance)

Imaginons une formule qui appelle RECHERCHEV trois fois sur la meme cle. Sans LET : =SI(RECHERCHEV(A2;table;3;FAUX)>1000; RECHERCHEV(A2;table;3;FAUX)*0,9; RECHERCHEV(A2;table;3;FAUX)). Excel recalcule RECHERCHEV trois fois, alors que le resultat est identique.

Avec LET : =LET(montant; RECHERCHEV(A2;table;3;FAUX); SI(montant>1000; montant*0,9; montant)). RECHERCHEV n’est appele qu’une seule fois. Sur une feuille de 5000 lignes avec une RECHERCHEV lourde, le gain de temps de recalcul est typiquement de 5 a 10x.

Etape 3 : Rendre lisible une formule complexe

Prenons une formule de calcul de prime commerciale : la prime vaut 5 % du chiffre d’affaires si le CA depasse l’objectif, sinon 2 %, avec un plancher de 50 000 FCFA et un plafond de 500 000 FCFA. Sans LET, c’est une seule longue ligne illisible.

=LET(
  ca; SOMME(C2:C13);
  objectif; 5000000;
  taux; SI(ca>objectif; 5%; 2%);
  prime_brute; ca * taux;
  prime; MIN(MAX(prime_brute; 50000); 500000);
  prime
)

Chaque etape du raisonnement metier devient une variable nommee. Six mois plus tard, vous (ou un collegue) comprenez instantanement la logique. Le signal de reussite : la formule se lit comme un paragraphe.

Etape 4 : Combiner LET avec FILTRE et UNIQUE

LET brille particulierement avec les fonctions de tableau dynamique. Exemple : compter le nombre de clients distincts ayant achete plus de 100 000 FCFA cette annee.

=LET(
  ventes; FILTRE(B2:B1000; (A2:A1000>=DATE(2026;1;1)) * (C2:C1000>100000));
  clients_uniques; UNIQUE(ventes);
  NBVAL(clients_uniques)
)

Sans LET, il faudrait imbriquer les fonctions sur une seule ligne, rendant le debogage tres difficile. Avec LET, on isole le filtre, puis l’unicite, puis le comptage.

Etape 5 : Eviter les erreurs avec SIERREUR + LET

Pour proteger une formule contre les erreurs (division par zero, RECHERCHEV non trouvee), on utilise souvent SIERREUR. Mais sans LET, on duplique la formule deux fois.

=LET(
  marge; (B2 - C2) / C2;
  SIERREUR(marge; 0)
)

Au-dela de la lisibilite, cela evite que SIERREUR recalcule la formule deux fois en interne. Pour des formules lourdes, le gain est notable.

Etape 6 : Construire une fonction reutilisable avec LAMBDA + LET

LET se combine parfaitement avec LAMBDA (egalement disponible en Microsoft 365 et 2021) pour creer vos propres fonctions personnalisees. Exemple : une fonction PRIME_COM qui prend un CA et un objectif et renvoie la prime.

=LAMBDA(ca; objectif;
  LET(
    taux; SI(ca>objectif; 5%; 2%);
    brute; ca * taux;
    MIN(MAX(brute; 50000); 500000)
  )
)

Stockez cette LAMBDA dans le Gestionnaire de noms (onglet Formules > Gestionnaire de noms) sous le nom PRIME_COM. Vous l’utilisez ensuite dans toute la feuille comme =PRIME_COM(C2; 5000000). C’est l’equivalent d’une fonction utilisateur sans VBA.

Etape 7 : Pieges et limites de LET

Trois pieges a connaitre. Premier piege : les noms de variables ne peuvent pas etre identiques a des noms de cellules ou de plages nommees existantes (Excel renvoie une erreur). Choisissez des noms suffisamment specifiques (ex : « ca_2026 » plutot que « ca »).

Deuxieme piege : la limite de 126 paires nom/valeur dans une seule formule LET. En pratique, au-dela de 10-15 variables, decoupez en plusieurs formules ou en LAMBDA. Troisieme piege : LET n’est pas disponible dans Excel 2019 ou anterieurs. Si vous partagez le fichier avec une personne sur Excel 2019, vos formules afficheront #NOM?. Verifiez la version cible avant de migrer.

Cas d’usage : un tableau de bord commercial avec 60 % de formules en moins

Sur un tableau de bord commercial reel (CA, marge, top 10 clients, evolution mois/mois), la migration vers LET reduit typiquement le nombre de formules de 60 % et le temps de recalcul de 3 a 5 secondes par feuille. Les KPI restent identiques, mais le fichier devient maintenable.

Une bonne pratique : commencez par les 5 formules les plus lourdes et les plus copiees (souvent un calcul de marge, un classement, un calcul de variation). Refactorisez-les avec LET et mesurez le gain de temps de recalcul via Formules > Calculer maintenant (F9). Vous verrez la difference immediatement.

Comparaison avec les colonnes intermediaires

Une alternative classique a LET est de creer des colonnes intermediaires (ex : col D = RECHERCHEV, col E = test, col F = resultat final). Cette approche reste valide pour les besoins simples. LET est preferable quand : (1) on ne veut pas polluer la feuille avec des colonnes techniques, (2) la logique est specifique a une formule unique, (3) on veut packager la logique en LAMBDA reutilisable. Les deux approches coexistent souvent dans un meme classeur. Voir aussi notre guide sur la fonction LAMBDA et les formules de tableaux dynamiques.

Avec LET maitrisee, vos classeurs deviennent radicalement plus lisibles, plus rapides et plus faciles a transmettre. C’est l’une des trois fonctions les plus impactantes apparues dans Excel ces 5 dernieres annees, avec LAMBDA et FILTRE.

Migration progressive d’un classeur existant vers LET

Ne refactorisez pas tout d’un coup : c’est risque et chronophage. Adoptez une approche progressive sur 4 semaines. Semaine 1 : auditez les formules les plus lentes via Formules > Evaluer la formule, et listez les 10 formules les plus dupliquees (RECHERCHEV repetes, INDEX/EQUIV en cascade, calculs conditionnels imbriques). Semaine 2 : refactorisez les 3 plus simples avec LET et validez les resultats par comparaison cellule par cellule sur 100 lignes echantillon. Semaine 3 : refactorisez les 3 plus complexes en gardant les anciennes formules dans une feuille « archive » jusqu’a validation finale. Semaine 4 : packagez les patterns recurrents en LAMBDA reutilisables stockees dans le gestionnaire de noms.

Cette demarche limite le risque de regression. Sur chaque migration, comparez le total general avant/apres : si une difference apparait, c’est qu’une variable LET masque une dependance non identifiee. Le piege classique : oublier qu’une formule referencait une cellule qui contenait deja un nom defini.

Combiner LET avec les fonctions de tableau implicites

Microsoft 365 a introduit les tableaux deversants (spill ranges). LET fonctionne nativement avec eux. Exemple : =LET(plage; A2:A100; positifs; FILTRE(plage; plage>0); MOYENNE(positifs)). La variable « positifs » devient un tableau dynamique, et MOYENNE accepte ce tableau. Cette combinaison remplace avantageusement les formules matricielles avec Ctrl+Maj+Entree des anciennes versions d’Excel.

Attention au comportement de deversement : si la cellule en dessous de votre formule LET contient deja une valeur, Excel affiche #DEVERS!. Liberez la zone de deversement avant de saisir la formule.

Documentation interne : commenter une formule LET

Excel n’a pas de syntaxe de commentaire dans les formules, mais vous pouvez utiliser des noms de variables explicites comme documentation auto-portee : ca_brut_2026, marge_apres_remise, prime_plafonnee_500k. Chaque nom devient une mini-documentation. Ajoutez egalement un commentaire de cellule (clic droit > Nouveau commentaire) pour expliquer le contexte metier global. C’est essentiel pour les fichiers transmis a un successeur ou a un cabinet d’audit.

Verifier la version d’Excel installee

Avant de deployer LET dans un fichier partage, verifiez la version Excel des destinataires. Onglet Fichier > Compte > A propos d’Excel : la version Microsoft 365 ou Excel 2021 affiche LET. Excel 2019 et anterieurs renvoient #NOM?. Sur LibreOffice et Google Sheets, LET n’existe pas non plus dans les versions courantes ; la formule sera importee comme texte. Pour ces environnements mixtes, gardez les anciennes formules ou pre-calculez via Power Query.

Partager