Le nom "plages propagées" défini toutes les formules ou manipulations qui vont impliquer plusieurs cellules dans la même action.
Historiquement, une fonction Excel retourne le résultat dans une seule cellule. Mais à partir de 2019, le moteur de calcul d'Excel a été retravaillé et il est possible pour une fonction d'afficher le résultat dans plusieurs cellules.
Les fonctions propagées
Par exemple, cette animation vous montre comment la fonction UNIQUE, retourne une liste unique des données de la colonne A.
Comme vous pouvez le voir, nous avons écrit la fonction UNIQUE dans une seule cellule mais le résultat s'affiche dans autant de cellules que nécessaire.
C'est ça le principe des fonctions propagées ?Mais il n'y a pas que la fonction UNIQUE, il y a aussi
- TRIER, TRIERPAR (très pratique pour faire un tri aléatoire)
- SEQUENCE
- FRACTIONNER.TEXTE
- FILTRE
Les références propagées
Autre évolution importante d'Excel, les références propagées avec le symbole #
=E1#
Cette écriture est très astucieuse car nous ne pouvons pas savoir combien de cellules vont être remplies par une formule propagée. L'ajout du # récupère automatiquement toutes les valeurs retournées.
C'est avec cette technique que nous pouvons par exemple construire un menu déroulant dynamique
Validation matricielle inutile
Mais au-delà de ces nouveautés, ce sont toutes les formules matricielles historiques d'Excel qui sont impactées.
- Par exemple, les fonctions TRANSPOSE, FREQUENCE ou DROITEREG devaient être validées en appuyant simultanément sur les touches Ctrl + Maj + Entrée.
- Maintenant, avec l'apparition des plages propagées, il suffit d'écrire la formule pour que le résultat s'affiche immédiatement dans plusieurs cellules, juste avec Entrée.
Conséquence pour les calculs
Cette innovation change complètement la construction de formules traditionnelles. Par exemple, vous pouvez effectuer un calcul sur toute une plage de cellules et plus seulement sur une seule cellule comme c'est le cas pour cette division.
Comme vous le constatez, il n'est pas nécessaire de verrouiller la référence de la cellule D1 pour que cette valeur soit utilisée dans toute la plage matricielle ?
Mais aussi comme paramètre dans des fonctions, comme c'est le cas ici avec la fonction SI.
Et les exemples d'implications sont très nombreux
- Afficher tous les noms qui ne sont pas présents dans une autre colonne
- Trouver qui a obtenu le minimum ou le maximum
L'erreur #PROPAGATION
Vous l'avez compris de vous-même, une plage matricielle indique que le résultat d'une fonction est retourné dans plus d'une cellule. Et donc, un nouveau type d'erreur a été créé dans Excel; #PROPAGATION.
Quand ce message d'erreur apparaît, cela signifie que la fonction n'a pas assez de place dans votre feuille de calcul pour afficher le résultat complet.
Les références propagées
Dernière spécificités des plages propagées ; les références propagées. Pour faire référence à toutes les cellules renvoyées par une fonction propagées, les ingénieurs de Microsoft ont ajouté une nouvelle codification des références avec le symbole #
PIELAB
10/04/2021 @ 11:07
Bonjour,
Merci pour cet article très clair. J'essaie d'intégrer une formule TRANSPOSE dans un tableau structuré. Alors que la formule fonctionne en dehors du tableau structuré elle ne fonctionne plus quand on l'intègre dans le tableau (Erreur EPARS) alors que le nombre de colonnes du tableau correspond au nombre de lignes de la plage de données transposées. Y-a-t-il une solution que je n'ai pas vue ?
Frédéric LE GUEN
10/04/2021 @ 11:58
Bonjour, Si la fonction retourne EPARS, c'est qu'il n'y a forcément pas assez de place pour afficher le résultat
FRANCOIS
23/02/2021 @ 20:15
Bonjour,
J'ai construit un tableau de bord avec des fonctions matricielles rattachées à 3 menus déroulants dans une feuille interface et une feuille importation qui regroupe des données sur 3 années.
J'ai d'abord construit mon TB sur l'année 2020, tout fonctionne, puis j'ai importé les deux autres années dans ma feuille importation et ensuite j'ai modifié mes zones nommées, du moins l'amplitude afin que ces zones nommées englobent les deux nouvelles années. ET PATATRA, plus rien ne fonctionne. le choix de l'année affiche #VALEUR.
Du coup, j'ai modifié mes zones nommées afin qu'elles englobent juste l'année initiale, soit 2020, et là tout refonctionne...
Avez-vous une solution à me proposer ?
Cordialement.
Thomas.
Nadège
21/09/2020 @ 06:25
Bonjour,
J'utilise l'option Tableau et cela semble incompatible avec les formules matricielles dispropagées. J'avais déjà vérifié auparavant mais là je m'aperçois que je ne peux même plus utiliser une simple fonction SOMME.SI dans un tableau sans qu'apparaisse l'erreur #Epars. Auriez-vous une solution autre que transformer mon tableau en plage de cellule (car je l'utilise pour créer un TCD) ?
En vous remerciant par avance.
Frédéric LE GUEN
21/09/2020 @ 11:19
Alors l'erreur ne vient pas du Tableau mais de la construction de la formule SOMME.SI comme je l'explique à la fin de cet article
Rosset Nicole
04/09/2020 @ 07:47
Bonjour,
Merci pour votre excellent article qui aide bien à saisir les nouveautés.
Pour rebondir sur la question précédente, j'ai un tableau dans lequel j'ai défini des noms logiques pour les colonnes et j'ai des formules dans certaines colonnes avec des SI(OU...) (conditions sur les rabais accordés). Dans ce cas-là les formules matricielles retournent une erreur.
Par contre, sans les noms logiques de colonne, pas de formule matricielle, donc pas d'erreur.
Mais j'aimerais conserver mes noms logiques et ne pas avoir automatiquement de formule matricielle. Comment faire ?
Merci de votre conseil
Nicole Rosset
dorleac
27/08/2020 @ 16:53
Comment faire pour que la formule ne se propage pas sur toutes une plage ? Ou autrement dit comment empêcher qu'une formule donne un résultat dans toute une plage alors que seulement certaines cellules nous intéresse ?
Frédéric LE GUEN
27/08/2020 @ 17:53
Mais c'est le principe même d'une plage dynamique c'est de se propager.
Après, tout dépend comment vous avez construit vos formules. Il faudra peut-être les revoir.