Aller au contenu

Fonction LAMBDA dans Google Sheets : un exemple concret d'utilisation

Antoine Brisset
Antoine Brisset
Temps de lecture : 2 min
Fonction LAMBDA dans Google Sheets : un exemple concret d'utilisation
Photo by Ryan Wallace / Unsplash

Table des matières

Il y a quelques semaines, j'ai été confronté à un problème dans le développement de Gadgeto.

Mon besoin : afficher automatiquement (sans utiliser la poignée de recopie) le nombre d'occurrences d'une valeur figurant dans chaque ligne d'une plage de données.

Pour que ce soit plus clair, voici le jeu de données :

La colonne TOTAL doit renvoyer le nombre de redirections pour chaque URL

Ce que je cherchais à obtenir, c'est : le nombre total de redirections 301 (ou 302) pour chaque URL.

Mon 1er réflexe a été de me tourner vers la fonction ARRAYFORMULA.

Sauf que pour "étendre" des calculs horizontaux, ça ne fonctionne pas.

Enfin, si, c'est possible, mais c'est vraiment tricky.

Et puis, je me suis souvenu que Google avait ajouté cet été de nouvelles fonctions hyper pratiques : les fonctions d'assistance LAMBDA.

Alors déjà, c'est quoi une fonction LAMBDA ?

Une fonction LAMBDA, c'est une fonction personnalisée qui prend en paramètres :

  1. une valeur (ou plusieurs) appelée "name"
  2. une formule qu'on applique à cette valeur, appelée "formula_expression"

Exemple : LAMBDA(number; number*2)(10).

Démo de LAMBDA

Ici, le 1er argument est number : c'est le "name", autrement dit la valeur à transmettre à la fonction.

Le 2ème argument est number*2 : c'est la fonction permettant de multiplier ma valeur par 2.

Et j'appelle la fonction LAMBDA directement sur ma valeur, ici 10.

Maintenant, parlons des fonctions d'assistance LAMBDA.

Ce sont des fonctions qui prennent en paramètres :

  • un tableau de données
  • une fonction LAMBDA

Il en existe 6 à l'heure actuelle :

  • MAP
  • REDUCE
  • BYCOL
  • BYROW
  • SCAN
  • MAKEARRAY

Celle dont je vais te parler aujourd'hui est BYROW.

Comme son nom l'indique, elle permet d'exécuter une fonction LAMBDA sur chaque ligne d'un tableau de données.

Pile poil ce qu'il me faut.

Du coup, voici comment je m'en suis servi :

=BYROW(B9:K;LAMBDA(row;COUNTIFS(row;">300";row;"<400")))

Traduction : je souhaite compter le nombre de valeurs > 300 et < 400 dans chaque ligne de ma plage de données B9:K.

Démo de BYROW

Le souci, c'est que la fonction s'applique même aux lignes "vides".

Il a donc fallu que j'ajoute une condition pour n'exécuter BYROW que sur les lignes contenant au moins une valeur.

Ce qui donne :

=ARRAYFORMULA(IF(B9:B<>"";BYROW(B9:K;LAMBDA(row;COUNTIFS(row;">300";row;"<400")));""))
Formule finale

Et voilà !

J'espère que cette petite démo t'aura permis d'en savoir plus sur les possibilités offertes par les nouvelles fonctions Google Sheets.

Google Sheets

Antoine Brisset Twitter

Consultant SEO depuis 2010. Je traque les clics inutiles et automatise les tâches répétitives pour gagner du temps dans mon quotidien de travailleur du web.


Articles Similaires

Membres Public

Importer des datasets facilement grâce aux fonctions nommées de Google Sheets

Aujourd'hui, je vais te montrer comment importer facilement un jeu de données que tu utilises souvent à l'intérieur de tes feuilles Google Sheets. Exemple : tu travailles sur du SEO local et tu as besoin, régulièrement, de récupérer la liste des 36000 communes françaises. Pour éviter de devoir à chaque fois

Importer des datasets facilement grâce aux fonctions nommées de Google Sheets
Membres Public

Comment scraper proprement avec IMPORTXML ?

Quand on utilise IMPORTXML pour extraire le contenu de plusieurs balises (exemple : toutes les balises h2 d'une page), les différentes valeurs trouvées s'affichent par défaut les unes en dessous des autres, sur plusieurs lignes. C'est embêtant. Pourquoi ? Parce que si on ajoute d'autres URLs, on ne peut pas "tirer" la

Comment scraper proprement avec IMPORTXML ?
Membres Public

L'astérisque comme alternative à la fonction AND dans Google Sheets

Les formules Google Sheets, c'est bien, mais quand on commence à enchaîner les ouvertures de parenthèses pour imbriquer plusieurs fonctions, ça devient vite indigeste. Aujourd'hui, je vais te donner une astuce toute simple pour réduire le nombre de parenthèses dans tes IF. En général, pour tester si plusieurs conditions sont

L'astérisque comme alternative à la fonction AND dans Google Sheets