Retourner vrai ou faux si une cellule appartient à la plage – Application au formatage de plages propagées.

Une petite lambda pour terminer la journée ?

Objectif : retourner la valeur VRAI ou FAUX si la cellule appartient à la plage.

Limite : Il faut que les deux soient sur la même feuille, évident, mais bon... Aussi, on teste une cellule par rapport à une plage, et pas un groupe de cellules par rapport à une plage.

Nom de la lambda : L_LaCelluleAppartientALaPlage

Formule (ne pas oublier le =) :

=LAMBDA(rCell;rPlage;ET(@LIGNE(rCell) >= @LIGNE(rPlage); @LIGNE(rCell) < (@LIGNE(rPlage) + LIGNES(rPlage)); @COLONNE(rCell) >= (@COLONNE(rPlage)); @COLONNE(rCell) < ((@COLONNE(rPlage)) + COLONNES(rPlage))))

Exemple d'utilisation

=L_LaCelluleAppartientALaPlage(C2;B13#)

Utilité : par exemple, cela permet d'avoir une lambda simple pour appliquer un format à une plage dynamique propagée. D'autant plus utile avec PIVOTER.PAR qui s'en vient. La fonction est aussi très facile à combiner avec PRENDRE et EXCLURE pour ne considérer que certaines parties d'une plage propagées, comme la zone des données.

On applique ensuite à la totalité de la feuille (merci à Céline BOUCOURT de m'avoir poussé à considérer cette technique que je pensais dangereuse pour la mémoire et la taille du fichier).

Limites de l'exemple :

  • Le déplacement de plage va créer des zones non-contigües dans la mise en forme conditionnelle.
  • Je n'ai pas encore testé les performances d'une telle approche sur des gros fichiers.

Note : il existe une autre méthode directement dans Excel pour retourner l'intersection de deux plages : on met un espace entre les deux. Le problème, c'est que l'on ne peut pas utiliser cette approche dans une mise en forme conditionnelle.

Et vous, comment feriez-vous ?

Pour marque-pages : Permaliens.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.