Créez une fonction personnalisée avec LAMBDA en 3 étapes

Dans ce tuto je vais vous expliquer comment créer votre première fonction personnalisée à l’aide de LAMBDA en 3 étapes.

Je vous conseille de visionner la vidéo ci-dessous pour voir comment cela fonctionne pas à pas dans Excel. Vous pouvez aussi télécharger la pièce jointe, ce qui vous permettra d’expérimenter LAMBDA par vous même à partir de mon fichier exemple.
4-LAMBDA_2_MINIATURE.jpg

sabonner200.png

Au moment où je rédige cet article, LAMBDA est disponible uniquement dans MICROSOFT 365 et dans le programme Office Insider.

Si vous souhaitez vous inscrire au programme Office Insider, je vous explique tout ici : Office Insider – Decouvrez les nouveautés d’Excel avant tout le monde

Sommaire
1 Avantages des fonctions personnalisées créées avec LAMBDA
2 Votre première fonction personnalisée en 3 étapes
① – Création et test de la FORMULE
② – Création et test de LA FONCTION LAMBDA
2.2.1 La fonction LAMBDA se compose des arguments suivants :
2.2.2 Test de la fonction LAMBDA dans le classeur
③ – Création et utilisation de LA FONCTION PERSONNALISÉE

Avantages des fonctions personnalisées créées avec LAMBDA​

Créer des fonctions personnalisées avec LAMBDA permet de :

  • rendre vos formules (et donc vos classeurs) plus lisibles
  • créer des fonctions réutilisables au sein d’un même classeur
  • ajouter des fonctionnalités de récursivité à vos fonctions
Dans ce tuto nous aborderons la mise en œuvre d’une fonction personnalisée simple non récursive, cela sera l’objet d’un prochain tuto.

Votre première fonction personnalisée en 3 étapes​

① – Création et test de la FORMULE​

Prenons l’exemple d’une formule simple qui permet d’extraire le Nom dans un chaîne de caractères constituée d’un Prénom et d’un Nom :

1_Lambda_demo-2.jpg

Notre formule d’extraction du Nom que nous allons transformer en une fonction personnalisée est relativement simple :

=STXT(A5;CHERCHE(" ";A5;1);NBCAR(A5))
Je ne vais pas m’attarder dans ce tuto sur le mode de fonctionnement de cette fonction.

Si vous souhaitez vous familiariser avec les fonctions d’extraction de chaînes de caractères, vous trouverez ici un tuto dédié à ce sujet : Extraire du texte d’une chaîne de caractères avec des fonctions

② – Création et test de LA FONCTION LAMBDA​

Dans un premier temps il n’est pas utile de savoir comment nous allons appeler notre fonction personnalisée.

Nous allons nous concentrer sur la mécanique de fonctionnement de notre fonction personnalisée avec LAMBDA, puis tester son bon fonctionnement.

La fonction LAMBDA se compose des arguments suivants :​

2_Lambda_demo.jpg

Notre formule ne fait référence qu’à une seule variable, il n’y aura donc qu’un seul paramètre à transmettre à notre formule.

Nous allons appeler cette variable « patronyme«

« patronyme » est la référence à une cellule contenant une chaîne de caractères (Prénom et Nom).

Ainsi notre fonction LAMBDA est la suivante :

=LAMBDA(patronyme;STXT(patronyme;CHERCHE(" ";patronyme;1);NBCAR(patronyme)))

Test de la fonction LAMBDA dans le classeur​

Si on saisit la fonction LAMBDA telle quelle directement dans une cellule on obtient le message d’erreur suivant :

3_Lambda_demo.jpg

Pour tester une fonction LAMBDA directement dans une feuille de calcul il est nécessaire de lui transmettre les arguments de test de cette façon :

4_Lambda_demo.jpg

Donc pour tester notre fonction LAMBDA, nous allons la saisir sous cette forme directement dans une cellule :

=LAMBDA(patronyme=LAMBDA(patronyme;STXT(patronyme;CHERCHE(" ";patronyme;1);NBCAR(patronyme)))(A12)
Voici le résultat de notre fonction de test dans 4 cas différents :

5_Lambda_demo-1.jpg

③ – Création et utilisation de LA FONCTION PERSONNALISÉE​

Maintenant que nous sommes sûrs de la syntaxe de notre fonction nous allons finaliser la création de notre fonction personnalisée.

Afin de faire en sorte que le nom de notre fonction ait un sens logique par rapport à son utilité, nous allons la nommer « ExtractionNom()«

C’est dans le gestionnaire de noms que l’on doit enregistrer les fonctions personnalisées.

Mais au préalable vous allez copier votre fonction pour ne pas avoir à la ressaisir complètement. Sélectionnez la fonction sans ses paramètres de test et faites CTRL + c

=LAMBDA(patronyme;STXT(patronyme;CHERCHE(" ";patronyme;1);NBCAR(patronyme)))
Ensuite ouvrez le Gestionnaire de noms qui se trouve dans le bandeau « Formules »

7_Gestionnaire_NOMS.jpg

Une fois le gestionnaire de noms ouvert, vous allez :

  • définir le nom de votre fonction personnalisée dans l’espace « Nom »
    Ici nous avons décidé de nommer notre fonction « ExtractionNom »
  • rajouter des commentaires pour documenter votre fonction. Une bonne pratique consiste à lister chacune des variables et d’expliquer à quoi elles servent, ce qui simplifiera la vie lorsque vous insérerez votre fonction personnalisée dans votre classeur.
    Nous rajoutons donc « Patronyme : Nom et Prénom » ici
  • saisir votre fonction LAMBDA dans la zone « Fait référence à : »
    Placez vous dans la zone de saisie et faites « CTRL + v » pour coller votre fonction
Voilà le résultat :



6_Gestionnaire_NOMS.jpg

La fonction personnalisée est maintenant créée et vous pouvez l’utiliser partout dans votre classeur.

Fonction personnalisée avec LAMBDA

Vous savez maintenant comment créer une fonction personnalisée. Il est possible que cette façon de faire évolue à l’avenir car je vous le rappelle nous sommes ici dans une version de Microsoft 365 diffusée dans le Canal Bêta du programme Office Insider.

Qui sait ce que Microsoft nous réserve pour la version finale!

Que pensez vous de cette fonction? Dites moi en commentaires si vous pensez l’utiliser lorsqu’elle sera disponible.
 

Pièces jointes

  • 0004_XLD_Lambda_FINAL.xlsx
    25.6 KB · Affichages: 158
Dernière édition:

YAP32

XLDnaute Occasionnel
Dans ce tuto je vais vous expliquer comment créer votre première fonction personnalisée à l’aide de LAMBDA en 3 étapes.

Je vous conseille de visionner la vidéo ci-dessous pour voir comment cela fonctionne pas à pas dans Excel. Vous pouvez aussi télécharger la pièce jointe, ce qui vous permettra d’expérimenter LAMBDA par vous même à partir de mon fichier exemple.
Regarde la pièce jointe 1099861

Au moment où je rédige cet article, LAMBDA est disponible uniquement dans MICROSOFT 365 et dans le programme Office Insider.

Si vous souhaitez vous inscrire au programme Office Insider, je vous explique tout ici : Office Insider – Decouvrez les nouveautés d’Excel avant tout le monde

Sommaire
1 Avantages des fonctions personnalisées créées avec LAMBDA
2 Votre première fonction personnalisée en 3 étapes
① – Création et test de la FORMULE
② – Création et test de LA FONCTION LAMBDA
2.2.1 La fonction LAMBDA se compose des arguments suivants :
2.2.2 Test de la fonction LAMBDA dans le classeur
③ – Création et utilisation de LA FONCTION PERSONNALISÉE

Avantages des fonctions personnalisées créées avec LAMBDA​

Créer des fonctions personnalisées avec LAMBDA permet de :

  • rendre vos formules (et donc vos classeurs) plus lisibles
  • créer des fonctions réutilisables au sein d’un même classeur
  • ajouter des fonctionnalités de récursivité à vos fonctions
Dans ce tuto nous aborderons la mise en œuvre d’une fonction personnalisée simple non récursive, cela sera l’objet d’un prochain tuto.

Votre première fonction personnalisée en 3 étapes​

① – Création et test de la FORMULE​

Prenons l’exemple d’une formule simple qui permet d’extraire le Nom dans un chaîne de caractères constituée d’un Prénom et d’un Nom :

Regarde la pièce jointe 1148278
Notre formule d’extraction du Nom que nous allons transformer en une fonction personnalisée est relativement simple :

=STXT(A5;CHERCHE(" ";A5;1);NBCAR(A5))
Je ne vais pas m’attarder dans ce tuto sur le mode de fonctionnement de cette fonction.

Si vous souhaitez vous familiariser avec les fonctions d’extraction de chaînes de caractères, vous trouverez ici un tuto dédié à ce sujet : Extraire du texte d’une chaîne de caractères avec des fonctions

② – Création et test de LA FONCTION LAMBDA​

Dans un premier temps il n’est pas utile de savoir comment nous allons appeler notre fonction personnalisée.

Nous allons nous concentrer sur la mécanique de fonctionnement de notre fonction personnalisée avec LAMBDA, puis tester son bon fonctionnement.

La fonction LAMBDA se compose des arguments suivants :​

Regarde la pièce jointe 1148279
Notre formule ne fait référence qu’à une seule variable, il n’y aura donc qu’un seul paramètre à transmettre à notre formule.

Nous allons appeler cette variable « patronyme«

« patronyme » est la référence à une cellule contenant une chaîne de caractères (Prénom et Nom).

Ainsi notre fonction LAMBDA est la suivante :

=LAMBDA(patronyme;STXT(patronyme;CHERCHE(" ";patronyme;1);NBCAR(patronyme)))

Test de la fonction LAMBDA dans le classeur​

Si on saisit la fonction LAMBDA telle quelle directement dans une cellule on obtient le message d’erreur suivant :

Regarde la pièce jointe 1148280
Pour tester une fonction LAMBDA directement dans une feuille de calcul il est nécessaire de lui transmettre les arguments de test de cette façon :

Regarde la pièce jointe 1148281
Donc pour tester notre fonction LAMBDA, nous allons la saisir sous cette forme directement dans une cellule :

=LAMBDA(patronyme=LAMBDA(patronyme;STXT(patronyme;CHERCHE(" ";patronyme;1);NBCAR(patronyme)))(A12)
Voici le résultat de notre fonction de test dans 4 cas différents :

Regarde la pièce jointe 1148282

③ – Création et utilisation de LA FONCTION PERSONNALISÉE​

Maintenant que nous sommes sûrs de la syntaxe de notre fonction nous allons finaliser la création de notre fonction personnalisée.

Afin de faire en sorte que le nom de notre fonction ait un sens logique par rapport à son utilité, nous allons la nommer « ExtractionNom()«

C’est dans le gestionnaire de noms que l’on doit enregistrer les fonctions personnalisées.

Mais au préalable vous allez copier votre fonction pour ne pas avoir à la ressaisir complètement. Sélectionnez la fonction sans ses paramètres de test et faites CTRL + c

=LAMBDA(patronyme;STXT(patronyme;CHERCHE(" ";patronyme;1);NBCAR(patronyme)))
Ensuite ouvrez le Gestionnaire de noms qui se trouve dans le bandeau « Formules »

Regarde la pièce jointe 1148283
Une fois le gestionnaire de noms ouvert, vous allez :

  • définir le nom de votre fonction personnalisée dans l’espace « Nom »
    Ici nous avons décidé de nommer notre fonction « ExtractionNom »
  • rajouter des commentaires pour documenter votre fonction. Une bonne pratique consiste à lister chacune des variables et d’expliquer à quoi elles servent, ce qui simplifiera la vie lorsque vous insérerez votre fonction personnalisée dans votre classeur.
    Nous rajoutons donc « Patronyme : Nom et Prénom » ici
  • saisir votre fonction LAMBDA dans la zone « Fait référence à : »
    Placez vous dans la zone de saisie et faites « CTRL + v » pour coller votre fonction
Voilà le résultat :



Regarde la pièce jointe 1148284
La fonction personnalisée est maintenant créée et vous pouvez l’utiliser partout dans votre classeur.

Regarde la pièce jointe 1148285
Vous savez maintenant comment créer une fonction personnalisée. Il est possible que cette façon de faire évolue à l’avenir car je vous le rappelle nous sommes ici dans une version de Microsoft 365 diffusée dans le Canal Bêta du programme Office Insider.

Qui sait ce que Microsoft nous réserve pour la version finale!

Que pensez vous de cette fonction? Dites moi en commentaires si vous pensez l’utiliser lorsqu’elle sera disponible.
Franchement bravo !

Très explicite et simple

UN GRAND MERCI.
 

JaGAF

XLDnaute Nouveau
Bonjour David,
Cette fonction LAMBDA et la description simple et claire que vous en faites m'a tout de suite plu,
mais l'application :eek:

Pouvez-vous m'aider à comprendre quelle erreur j'ai pu faire ou étape que j'aurais manquée ?

Dans l'attente de vous lire je vous remercie par avance.
JaGAF
 

Pièces jointes

  • Fonction_LAMBDA_réutilisable_test.xlsx
    29.4 KB · Affichages: 13

Discussions similaires

Statistiques des forums

Discussions
311 720
Messages
2 081 899
Membres
101 834
dernier inscrit
Jeremy06510