NamedRanges Excel2016/19 vs Excel 365 v2210

Bonjour,

Récemment j'ai créé un fichier sous Excel365, version 2210, dans lequel je définis des NamedRanges, ils sont utilisés à divers endroits sans problème. Par la suite, j'ai édité et utilisé ce fichier sur une autre machine, Excel 2016, les cellules étaient correctement mises à jour. J'ai voulu faire quelque tests afin de modifier mon modèle, pour celà j'ai appelé des NamedRanges à partir d'autres cellules, sous Excel2016, et là grosse surprise pour moi ça ne réagit pas de la même façon (testé aussi sous Excel2019)

Un NamedRange xx définit sous Excel365 et appelé sous Excel365 affiche toutes les données référencées , ce même fichier ouvert sous 2016 affichera le même contenu mais si j'ajoute un "appel" à xx là je ne vois plus toutes les valeurs du tableau mais juste celle contenue dans la même colonnne (aussi vrai niveau ligne si on transpose le range).

Excel365 semble considèrer une référence à un array statique: il n'est d'ailleurs pas possible de modifier une valeur dans la copie ( =xx), l'adressage est relatif, le tableau sera affiché à partir de la première cellule =xx

Excel 2016/2019 semblent considérer une collection de NamedCells, + qu'un NamedRange, il faudra "étirer" =xx si on souhaite afficher plus d'une valeur, et chaque valeur est modifiable, de + il ne semble pas possible de pouvoir utiliser ce NamedRange à partir d'une autre colonne sous peine de voir des #VALUE!

Je me permets de mettre un fichier très basique en attach, il a été initialement créé sous Excel365 (2210), un NamedRange (xx) est créée H4:N4, il est appelé en H7, G7 et I7 sous 365, le fichier est sauvé. Le fichier est ouvert sous Excel2016, il affiche le même contenu que sous 365, j'ajoute un appel en H11, G11 et I13, ce qui est affiché diffère.

Quelqu'un aurait-il connaissance d'un paramêtre (ou moyen quelconque) de rendre le fonctionnement homogène quelque soit la version d'Excel? Le comportement espéré est celui observé sous Excel365, bref sous Excel 2016 taper =XX qq soit la cellule et voir le tableau s'afficher à partir de cette cellule

D'avance merci pour toute idée :)

excelnamedrange
8book365.xlsx (10.14 Ko)

Bonjour,

Pour autant que je sache, cette fonctionnalité est propre à Excel 365. Tu ne pourras pas reproduire cet affichage dans une autre version.

Daniel

Note ce comportement, dans les versions pré 365; si on tire la formule "=xx" vers la droite, on obtient :

capture d ecran 20221118 183027

comme si on avait écrit =INDEX(xx;0) en G5, INDEX(xx;1) en H5, INDEX(xx;2) en I5 etc.

Bonjour

Avant 365 on ne pouvait utiliser une matrice dans une cellule qu'imbriquée dans une fonction donnant un résultat unique

Dans le cas cité juste au dessus par Daniel, Excel se contente de paralléliser ligne et/ou colonne comme effectivement une sorte d'INDEX mais avec des limites à l'utilisation et surtout une lecture peut sûre...

Merci pour les réponses,

Si ça peut aider quelq'un, voici un workaround qui vaut ce qu'il vaut: prédéfinir l'output en sélectionnant des cellules, puis taper =xx et valider via Ctrl Shift Enter. C'est moins dynamique, la longueur du vecteur d'output doit être définie manuellement

Rechercher des sujets similaires à "namedranges excel2016 365 v2210"