Monsieur Excel
Pour tout savoir faire sur Excel !

20 décembre 2019

Un graphe élastique (d)

Prenons le graphe étudié dans le dernier article. La copie d’écran ci-dessous montre ce graphe et l’on peut voir dans la barre de formule que les X sont définis A2:A11 et les Y par B2:B11. En dessous de la copie du graphe, nous voyons comment il convient de modifier la formule du graphe pour le rendre dynamique : il faut remplacer $A$2:$A$11 par Les_X et $B$2:$B$11 par Les_Y, les deux noms élastiques que nous avons définis dans l’article précédent.

Remarque – Il est indispensable de ne pas effacer le nom de la feuille, sinon la modification ne marchera pas !


En bas de la copie d’écran, nous voyons ce que devient la formule du graphe dès que l’on valide la formule précédente. Excel a automatiquement remplacé le nom de la feuille, dans la formule du graphe, par celui du classeur. Pourquoi donc ?

Tout simplement parce que A2:A11 était une adresse dans la feuille de calcul, ce qui explique pourquoi les X étaient représentés par Dynamic!$A$2 :$A$11.

Quand on remplace l’adresse $A$2:$A$11, par Les_X, on change tout ! En effet, un nom est une propriété du classeur et non d’une feuille. Du coup, Excel remplace automatiquement le nom de la feuille par celui du classeur !

Et voilà, vous avez maintenant un graphe totalement élastique, sans avoir besoin de passer par un tableau. Cela fonctionne avec toutes les versions d'Excel !

14 décembre 2019

Un graphe élastique (c)

Reprenons notre modèle en A1 !

En fait, pour être précis, j’ai inséré 5 colonnes avant la colonne 1 afin de garder à droite ce que nous avions fait dans les deux articles précédents pour réaliser un graphe élastique en utilisant un tableau de données. Cela nous permettra d’afficher les deux solutions côte à côte…

Nous créons le graphe de façon tout à fait normale, en le présentant comme lors du premier article de cette série, et nous obtenons le résultat correspondant à la copie d’écran ci-dessous. Nous pouvons constater dans la barre de formule que les X sont bien définis par A2:A11 et les Y par B2:B11.


Un nom élastique

La première étape pour réaliser un graphe élastique consiste à donner un nom élastique aux X et aux Y. Pour cela, nous allons définir les noms Les_X et Les_Y de la façon suivante.

Les_X est défini par =Dynamic!$A$2:decaler(Dynamic!$A$1;nb(Dynamic!$A:$A);0)

Les_Y est défini par =decaler(Les_X;0;1)

Sélection d’un nom élastique

Nous souhaitons bien entendu vérifier si les définitions ci-dessus sont valides. Pour cela, naturellement, nous utilisons le menu déroulant à gauche de la barre de formule (la Zone Nom, dans la syntaxe d’Excel), pour sélectionner ces nouveaux noms et vérifier qu’ils pointent bien dans la bonne direction.

Hélas, cela ne marche pas ! Ils ne sont pas dans la liste… C’est là une particularité d’Excel : les noms dynamiques fonctionnent très bien, mais ils ne sont pas reconnus comme des noms à part entière !

Utilisons donc [Ctrl]-t (la commande Atteindre), et nous constatons là aussi que nos deux noms dynamiques sont absents de la liste. Mais cela ne nous empêche pas de taper le nom Les_X et de valider : nous constatons alors le parfait fonctionnement de ce nom dynamique qui sélectionne bien la zone A2:A11.

Astuce – Plus rapide encore que la commande « Atteindre », il nous suffit de nous placer dans la zone Nom, de taper Les_Y puis de valider pour constater la bonne sélection de nos Y.

Entrons 11/2019 en A12, puis resélectionnons Les_X. Nous constatons aussitôt que la sélection incorpore bien la nouvelle date.

Nous verrons dans le prochain article comment intégrer ces deux noms dynamiques dans la définition du graphe.

07 décembre 2019

Un graphe élastique (b)

Dans le dernier article, nous posions la question « Y a-t-il un problème ? ». Nous apportons la réponse à cette question dans les lignes qui suivent.

Dans l’exemple ci-dessous, nous avons un petit modèle dans lequel les zones A1:F5 et A12:F16 ont été définies comme tableaux. On voit d’ailleurs dans les lignes 1 et 12 les menus déroulants qui apparaissent automatiquement dès que l’on a affaire à un tableau.


Sélectionnons la colonne B avec un clic droit et nous obtenons alors ce qui apparaît dans la partie droite de la copie d’écran. On constate alors que les commandes Insérer et Supprimer sont grisées. Cela signifie que, lorsque deux tableaux ont en commun au moins une colonne, on ne peut plus insérer ni supprimer de colonne.

Cela est très grave ! En effet, dans ce cas, on perd l’indépendance des lignes et des colonnes dans Excel, ce qui est une qualité fondamentale du tableur.

Cliquons à présent dans une – quelconque ! – des cellules du bloc en faisant un clic droit, puis utilisons les commandes Table et Convertir en plage. Nous ôtons alors à ce bloc sa structure de tableau. Puis refaisons un clic droit sur la colonne B : nous observons alors (cf. la partie droite de la copie d’écran) que le problème a disparu : il est de nouveau possible d’insérer ou de supprimer des colonnes.


La solution que nous présentions dans l’article précédent présente donc un danger s’il est possible, dans le modèle concerné, qu’il y ait une intersection non vide dans les colonnes des tableaux de l’onglet. On perdrait alors la précieuse indépendance des lignes et des colonnes du modèle.

Nous verrons dans le prochain article comment faire un graphe élastique sans que ce problème ne puisse apparaître…