XL 2016 Utilisation d'une plage dynamique dans une MFC

danielco

XLDnaute Accro
Bonjour,

Je rentre le nom défini d'une plage dynamique dans une MFC. Le nom se transforme en référence de cellules et n'est donc plus dynamique :

Nom : _AD
Fais référence à : =DECALER(ESSAI2!$AD$6;;;NBVAL(ESSAI2!$AD:$AD))

Le nom sert à la définition de la plage à laquelle s'applique la MFC (champ :"s'applique à")

Peut-on faire autrement ?

Merci d'avance.

Daniel
 

chris

XLDnaute Barbatruc
Bonjour à tous
Bonjour,
De toutes façons, même avec un tableau structuré, la MFC se transforme en références de cellules.
Il faut passer par une bidouille VBA qui ajuste le AppliesTo Range de la MFC sur un déclenchement à déterminer.
Non la MFC suit l'allongement du tableau même si l'affichage est classique et la référence de la plage d'application évolue de concert

En dehors des tableaux structurés, la MFC n'a pas prévue pour se baser sur une plage dynamique.
Reste à l’appliquer sur la colonne entière avec, si nécessaire, dans le formule de MFC un test permettant d'en limiter la portée
 

Dudu2

XLDnaute Barbatruc
En dehors des tableaux structurés, la MFC n'a pas prévue pour se baser sur une plage dynamique.
Non, la MFC ne connait pas le tableau structuré mais juste une plage de cellules correspondant à sa définition initiale sur le tableau structuré.
L'ajustement opéré sur la plage d'application (insertion, ajout en fin de liste, suppression) se fait, que la définition initiale ait eu lieu sur un tableau structuré ou sur une plage mono-area quelconque.

Mais on sait bien que selon les manips qu'on fait, la MFC finit tôt ou tard par se morceler selon le bon vouloir d'Excel.

Si @danielco veut maîtriser la zone d'application de la MFC, dans les conditions spéciales qui semblent être les siennes, il faut passer par du code.
 

chris

XLDnaute Barbatruc
RE
Non, la MFC ne connait pas le tableau structuré mais juste une plage de cellules correspondant à sa définition initiale sur le tableau structuré.
L'ajustement opéré sur la plage d'application (insertion, ajout en fin de liste, suppression) se fait, que la définition initiale ait eu lieu sur un tableau structuré ou sur une plage mono-area quelconque.
Non en cas de tableau où s'ajoutent des lignes en fin de tableau, la définition évolue contrairement à une plage où on saisie sous la plage.

Seule l"insertion au sein de la plage joue sur la définition

Je suis d'accord sur le fait selon les manips, la MFC se morcelle et qu'il puisse être nécessaire de coder
 

Dudu2

XLDnaute Barbatruc
la définition évolue contrairement à une plage où on saisie sous la plage.
Non, que la plage soit issue initialement d'un tableau structuré ou d'un plage quelconque, la MFC évolue de la même façon.
Et c'est normal. Pour la MFC la notion de tableau structuré n'existe pas et d'ailleurs n'apparait nulle part dans la MFC.

Test avec un plage quelconque:
MFC.gif
 

chris

XLDnaute Barbatruc
Re

Je ne reproduis ni sur 2010 ni sur 365

Je vais vérifier sur 2019

Tu as quelle version et révision ?

La fait que les références de type Tableau n'existe pas dans les MFC et d'autres cas, n'implique pas qu'Excel ne les gère pas.

Il y a d'autres cas où ce qui est affiché est géré de façon particulière : les liaisons par exemple qui affichent un chemin, chemin qui n'est pas stocké dans le classeur si le fichier lié est dans le même dossier...
 

Dudu2

XLDnaute Barbatruc
@chris, je suis sur 2016. C'est bizarre que tu reproduises pas. C'est un truc de base de mon point de vue.
Je peux recréer le scénario du début sous GIF si tu veux.

La fait que les références de type Tableau n'existe pas dans les MFC et d'autres cas, n'implique pas qu'Excel ne les gère pas
Je pense que si les MFC intégraient les tableaux structurés, la syntaxe aurait évidemment suivi.
D'ailleurs c'est bien dommage qu'ils n'y soient pas intégrés. A moins que les manips qu'on y fait soient du ressort du standard de la "dynamqiue" des MFC (?). Auquel cas cela aurait été inutile ?
 

chris

XLDnaute Barbatruc
Re

J'ai reproduit strictement ton exemple.

Sur 2019 j'ai le comportement que tu as mais ni sur 2010 ni sur 365

Ma révision 2019 est 2108 comme 365

Révision dont les traductions françaises sont du grand n'importe quoi :
  • Chart qui était graphique est devenu Carte
  • Slicer qui était Segment devenu Trancheuse
Si on définit la MFC sur 2 colonnes sur 2019 cela ne suit plus non plus alors qu'en tableau cela suit...
 

Dranreb

XLDnaute Barbatruc
Je pense que si les MFC intégraient les tableaux structurés, la syntaxe aurait évidemment suivi.
Elle ne connait pourtant toujours encore que le FormulaLocal. J'ai plutôt l'impression qu'elles sont l'un des trucs qui à beaucoup mais insuffisamment évolué tout seul, sans jamais suivre grand chose de l'évolution du reste. Surtout du coté de l'interfaçage avec VBA. Ça m'a l'air d'être resté très brouillon tout ça.
 
Dernière édition:

Dudu2

XLDnaute Barbatruc
Chez moi (2016) ça suit si la plage est en 2 colonnes. Avec une différence s'il s'agit d'un TS.

Dans le 1er cas, c'est la seule cellule valorisée des 2 colonnes qui prend la MFC (=> Range de 2 areas)
Et si on valorise la cellule de la 2ème colonne, la MFC l'inclut et se reconstitue sur l'ensemble (=> Range de 1 area).

Dans le 2ème cas d'un TS, ce sont bien les 2 colonnes qui s'ajoutent à la MFC à l'ajout d'une seule valeur de colonne. Mais cela se comprend car Excel formate les 2 colonnes de la ligne concernée pour appliquer le style du tableau et donc la MFC est embarquée par ce formatage. Du moins on peut le supposer.

Si déjà on pouvait y mettre un nom du gestionnaire de noms, fut-il non lié à un TS, ce serait un gros progrès.
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 103
Messages
2 085 316
Membres
102 860
dernier inscrit
fredo67