Fonction Excel : LAMBDA
La fonction LAMBDA permet de créer des fonctions personnalisées et réutilisables.
De plus, utilisée avec certaines autres fonctions telles que MAP et REDUCE, elle permet de créer de puissantes formules.
Utilisation :
=LAMBDA(paramètre; calcul)
ou
=LAMBDA(paramètre1; paramètre2; ...; calcul)
Comprendre cette fonction
L'objectif ici sera de créer une fonction simple qui va tripler la quantité :
Entrez dans la fonction LAMBDA :
- paramètre : le nom de la variable (ici, le nombre qui devra être passé en argument et triplé par la fonction)
- calcul : le calcul à effectuer en fonction de l'argument paramètre
La formule pour tripler la quantité est :
=LAMBDA(nombre;nombre*3)
La fonction LAMBDA renvoie bien la fonction créée, mais puisqu'aucun nombre n'a été passé en argument, celle-ci ne peut pas retourner de résultat :
Lorsque vous utilisez d'autres fonctions d'Excel, vous commencez par entrer la fonction (par exemple MOYENNE), puis entre parenthèses le ou les arguments.
Avec LAMBDA c'est la même chose, entrez la fonction (ici LAMBDA(nombre;nombre*3)
), puis entre parenthèses l'argument requis par la fonction :
=LAMBDA(nombre;nombre*3)(A2)
Bien sûr on aurait aussi pu faire ce même calcul en entrant =A2*3
mais l'objectif était de prendre un exemple simple.
Fonction personnalisée
Pour faciliter son utilisation, vous pouvez enregistrer et nommer votre fonction personnalisée.
Dans le ruban Formules, cliquez sur Gestionnaire de noms :
Cliquez sur Nouveau, entrez le nom de la nouvelle fonction (par exemple "TRIPLER_QUANTITE") et la formule avec LAMBDA :
Vous pourrez ensuite utiliser facilement la nouvelle fonction créée :
Et cela vous évitera d'entrer la fonction LAMBDA à chaque fois :
=TRIPLER_QUANTITE(A2)
Combinaisons de fonctions
La fonction LAMBDA est nécessaire au fonctionnement de certaines autres fonctions et permet de créer de puissantes formules.
Ces autres fonctions sont :
En restant sur ce même exemple simple (qui triple la quantité), l'utilisation de LAMBDA avec la fonction MAP permet de calculer le résultat pour une plage entière en une seule formule :
=MAP(A2:A8;LAMBDA(nombre;nombre*3))
Si vous avez créé une fonction personnalisée, entrez simplement le nom de la fonction :
=MAP(A2:A8;TRIPLER_QUANTITE)