LET: Stocker des variables dans vos formules Excel - Conseils Excel

Les formules dans Excel sont déjà un langage de programmation. Lorsque vous créez un modèle dans Excel, vous écrivez essentiellement un programme pour calculer un ensemble de sorties à partir d'un ensemble d'entrées. L'équipe Calc Redmond a travaillé sur quelques améliorations du langage de formule Excel pour faire d'Excel un peu plus un langage de programmation. Le premier d'entre eux, la fonction LET, est désormais disponible en version bêta. Toute personne qui opte pour le canal Insider Fast d'Office 365 doit avoir accès à LET.

Parfois, vous créez une formule qui doit faire référence au même sous-calcul encore et encore. La fonction LET vous permet de définir une variable et le calcul de cette variable. Votre calcul peut avoir jusqu'à 126 variables. Chaque variable peut réutiliser les calculs des variables précédentes. Le dernier argument de la fonction LET est une formule qui renvoie une valeur (ou un tableau) à la cellule. Cette formule finale fera référence aux variables définies précédemment dans la fonction LET.

C'est plus facile à voir si je vous montre un exemple. J'ai trouvé au hasard une formule affichée sur le babillard électronique en 2010. Cette formule, du membre Special-K99, est conçue pour trouver l'avant-dernier mot d'une phrase.

Si je devais construire la formule originale étape par étape, je la construirais par étapes.

  • Étape 1: En B4, prenez le TRIM de la phrase originale pour vous débarrasser des espaces répétés.

    Fonction TRIM pour se débarrasser des espaces répétés.
  • Étape 2: Calculez le nombre de mots dans B4 en comparant la LEN du texte coupé à la longueur du texte coupé après avoir supprimé les espaces avec SUBSTITUTE. Dans une phrase de quatre mots, il y a trois espaces. Dans le problème actuel, vous voulez trouver le deuxième mot, donc le moins à la fin de cette formule.

    Fonctions LEN et SUBSTITUTE pour compter les mots
  • Étape 3: Ajoutez un carat (^) avant le mot souhaité. Cela utilise à nouveau SUBSTITUTE mais utilise le troisième argument de SUBSTITUTE pour trouver le 2ème espace. Ce ne sera pas toujours le 2ème espace. Vous devez utiliser le résultat de l'étape 2 comme troisième argument de l'étape 3.

    Utiliser carat dans SUBSTITUTE
  • Étape 4: Isolez tous les mots après le carat en utilisant MID et FIND.

    Isolez tous les mots après le carat en utilisant MID et FIND
  • Étape 5: Isolez l'avant-dernier mot en utilisant MID et FIND à nouveau.

    Isolez l'avant-dernier mot à l'aide de MID et FIND

Décomposés en petits calculs comme indiqué ci-dessus, de nombreuses personnes peuvent suivre la logique du calcul. Je construis fréquemment des formules en utilisant la méthode ci-dessus.

Mais je ne veux pas prendre cinq colonnes pour une formule, alors je commence à consolider ces cinq formules en une seule formule. La formule en F4 utilise E4 deux fois. Copiez tout dans la barre de formule pour E4 après le signe égal. Utilisez Coller pour remplacer E4 aux deux endroits. Continuez à remplacer les références de cellule par leurs formules jusqu'à ce que la seule chose référencée par la formule finale soit la cellule A4. À ce stade, vous avez une formule incroyablement longue:

Formule Excel très longue

Pourquoi est-ce si déroutant? Comment cinq formules d'une longueur moyenne de 24 caractères se sont-elles transformées en une formule de 370 caractères? C'est parce que la formule simple de B4 est référencée 12 fois au total dans la formule finale. Si vous n'avez pas stocké = TRIM (A4) dans la cellule B4, vous finissez par taper TRIM (A4) douze fois dans la formule finale.

Voici combien de fois chacune des sous-formules est utilisée dans la formule finale.

Les sous-formules comptent dans la formule finale

LET à la rescousse

La fonction LET vous permet de définir des variables une fois dans la formule et de réutiliser ces variables plus tard dans la formule. Dans la figure ci-dessous, quatre variables sont définies dans les définitions de variables avant qu'un calcul final ne renvoie le dernier mot.

Fonction LET pour définir des variables

Il semble que la meilleure pratique ici consiste à utiliser Alt + Entrée après chaque définition de variable dans la formule. Bien que vos formules puissent être A, B, C et D, il n'y a pas de mal à utiliser des noms de variables significatifs, comme vous le feriez dans n'importe quel langage de programmation.

Notez dans la figure ci-dessus qu'après avoir défini TRIMTEXT comme = TRIM (A4), la variable TRIMTEXT est réutilisée dans la définition de WhichSpace et CaratText.

Regarder la vidéo

Vous pouvez regarder les étapes pour combiner les sous-formules dans la mégaformule et dans la fonction LET ici:

Dans d'autres tests, la formule LET calcule environ 65% plus rapidement que la mégaformule similaire.

Articles intéressants...