XL 2013 Mettre à jour un graphique dynamiquement à partir d'une zone de données à dimension variable

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Olivier P

XLDnaute Nouveau
Bonjour, je souhaite mettre à jour un graphique dynamiquement à partir d'un tableau de données dont on ne connaît que l'origine en haut à gauche.
Le nombre de colonnes et de lignes est variable.
J'ai essayé en utilisant un tableau structuré mais sans succès.
Exemple : le jour 1, mes données sont :
Dates / date1 / date2
Part1 / 10 / 11
Part2 / 13 / 15
Part3 / 12 / 12 ---> le graphique doit donc afficher 3 séries de Parts avec 2 dates en abscisses
Le jour 2, mes données ont augmenté :
Dates / date1 / date2 / date3
Part1 / 10 / 11 / 10
Part2 / 13 / 15 / 14
Part3 / 12 / 12 / 13
Part4 / 20 / 19 / 19 ---> le graphique doit donc afficher 4 séries de Parts avec 3 dates en abscisses
Le jour 3, des données ont été supprimées :
Dates / date4
Part5 / 40 ---> le graphique doit donc afficher 1 série de Parts avec 1 date en abscisses.
Merci d'avance pour votre aide.
 
Solution
Bonjour Olivier P, djidji59430, Gégé-45550, le forum,

Un essai avec une macro (module de la feuille) qui efface les séries d'abord et qui colle ensuite une plage déterminée par une zone nommée dépendante des données présentes (voir le gestionnaire de noms).
Bien sûr, il faut auparavant accepter les macros pour ce classeur.

Bons tests !

AL 22
Bonjour, je souhaite mettre à jour un graphique dynamiquement à partir d'un tableau de données dont on ne connaît que l'origine en haut à gauche.
Le nombre de colonnes et de lignes est variable.
J'ai essayé en utilisant un tableau structuré mais sans succès.
Exemple : le jour 1, mes données sont :
Dates / date1 / date2
Part1 / 10 / 11
Part2 / 13 / 15
Part3 / 12 / 12 ---> le graphique doit donc afficher 3 séries de Parts avec 2 dates en abscisses
Le jour 2, mes données ont augmenté :
Dates / date1 / date2 / date3
Part1 / 10 / 11 / 10
Part2 / 13 / 15 / 14
Part3 / 12 / 12 / 13
Part4 / 20 / 19 / 19 ---> le graphique doit donc afficher 4 séries de Parts avec 3 dates en abscisses
Le jour 3, des données ont été supprimées :
Dates / date4
Part5 / 40 ---> le graphique doit donc afficher 1 série de Parts avec 1 date en abscisses.
Merci d'avance pour votre aide.
Bonsoir,
Voir les formules matricielles en feuil2, le gestionnaire de noms et la définition des données dans le graphique de la PJ.
Cordialement,
 

Pièces jointes

Dernière édition:
Bonjour Olivier P, djidji59430, Gégé-45550, le forum,

Un essai avec une macro (module de la feuille) qui efface les séries d'abord et qui colle ensuite une plage déterminée par une zone nommée dépendante des données présentes (voir le gestionnaire de noms).
Bien sûr, il faut auparavant accepter les macros pour ce classeur.

Bons tests !

AL 22
 

Pièces jointes

Bonjour Olivier P, djidji59430, Gégé-45550, le forum,

Un essai avec une macro (module de la feuille) qui efface les séries d'abord et qui colle ensuite une plage déterminée par une zone nommée dépendante des données présentes (voir le gestionnaire de noms).
Bien sûr, il faut auparavant accepter les macros pour ce classeur.

Bons tests !

AL 22
Bonjour à tous,
et merci vos contributions.
Gégé, je n'ai pas su utiliser ton fichier, mes tests ne changent jamais le graphique. Toutefois je crois comprendre que le nombre de colonnes reste inchangé si l'on diminue leur nombre dans les données brutes, ce qui ne va pas répondre complètement pour un graphique totalement dynamique.
AL22, j'avais essayé précédemment avec une solution macro mais n'avais pas abouti, étant peu familier de VBA. Cette solution me convient très bien, mon fichier cible comportant déjà des macros.

Encore merci à tous.
 
Bonjour à tous,
et merci vos contributions.
Gégé, je n'ai pas su utiliser ton fichier, mes tests ne changent jamais le graphique. Toutefois je crois comprendre que le nombre de colonnes reste inchangé si l'on diminue leur nombre dans les données brutes, ce qui ne va pas répondre complètement pour un graphique totalement dynamique.
Bonsoir,
avez-vous testé le fichier que j'ai joint au post #4 (tbl_gph_automatiques_gg3-xlsx) sans rien changer d'autre que le tableau de données en 'Feuil1!A4:C10', en le remplaçant une première fois par vos données (Jour 2) situées en Feuil1H22:K26 et ensuite une seconde fois par celles situées en Feuil1!H29:K33 et à chaque fois en observant le graphe ?
Bonne soirée,
 
Bonjour Gégé,
En fait, le fichier s'ouvre avec une erreur Excel : "Pb au niveau d'une ou plusieurs réf de formules...".
Ce qui fait probablement qu'à la suite, les changements effectués dans la zone de référence sont inopérants.
Bonjour et merci pour votre réponse,
Bizarre, étant sous 365, j'ai pris bien soin de n'utiliser que des fonctions compatibles avec 2013.
Mais peut-être sont-ce les références du gestionnaire de nom (par exemple le nom Dates qui fait référence à "=Feuil2!$B$2#" ?
Que se passe-t-il sous 2013 si vous tapez "=Feuil2!$B$2#" (sans les guillemets mais surtout avec le dièse) dans une cellule vide avec "de la place" à sa droite, par exemple dans la cellule G1 de la Feuil1 du fichier que je vous ai envoyé ?
Cordialement,
 
Bonjour Gégé,
Excel affiche une erreur si l'on tape cette formule, il ne la comprend pas.
Je pense en effet que nos versions sont incompatibles au niveau de certaines fonctions car dans le gestionnaire de noms, j'ai par exemple pour Dates :
=_xlfn.ANCHORARRAY(Feuil2!$B$2)
Cordialement

Précision : ma version d'Excel est Office famille et étudiant 2016.
 
Bonjour Gégé,
Excel affiche une erreur si l'on tape cette formule, il ne la comprend pas.
Je pense en effet que nos versions sont incompatibles au niveau de certaines fonctions car dans le gestionnaire de noms, j'ai par exemple pour Dates :
=_xlfn.ANCHORARRAY(Feuil2!$B$2)
re bonjour,
C'est exactement ça, excusez-moi, je n'ai pas pensé que cette fonction n'était pas disponible dans votre version. Il existe des moyens de contournement mais comme vous avez déjà reçu une solution satisfaisante, je ne pense pas que ça vous intéressera de les voir. Si je me trompe, dites le.
Cordialement,
 
re bonjour,
C'est exactement ça, excusez-moi, je n'ai pas pensé que cette fonction n'était pas disponible dans votre version. Il existe des moyens de contournement mais comme vous avez déjà reçu une solution satisfaisante, je ne pense pas que ça vous intéressera de les voir. Si je me trompe, dites le.
Cordialement,
Merci Gégé, effectivement, la solution de AL22 me convient bien.
Merci encore.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour