Comment puis-je obtenir un graphique dans Excel pour ajouter automatiquement de nouvelles séries de données?

Je travaille sur des tableaux pour les rapports financiers. L'un d'entre eux montre des valeurs pour les entreprises individuelles.

Je devrais ajouter de nouvelles entreprises sur une base mensuelle et j'aimerais que le diagramme crée automatiquement une nouvelle série de données lorsque je crée une ligne pour une nouvelle entreprise dans ma feuille Excel et j'insère des données.

Alternativement, je peux ajouter au préalable 12 nouvelles séries de données vides, auquel cas j'aurai besoin de savoir comment garder la série vide invisible dans la légende jusqu'à ce qu'elles contiennent des données.

Quelqu'un sait-il comment résoudre ceci?

«Les gammes nommées (cellules) sont l'un des secrets du succès dans ce que vous voulez faire; Une excellente ressource existe déjà en ligne: http://pubs.logicalexpressions.com/pub0009/lpmarticle.asp?id=518

J'ai résolu ce problème pour un cours Excel enseigné à ma Compagnie en utilisant la ressource suivante: http://www.techrepublic.com/blog/microsoft-office/two-ways-to-build-dynamic-charts-in-excel/ Je trouve la solution assez difficile à mettre en place au début, mais ça fonctionne comme un charme et évite toutes les VBA et Tables! Fonctionne pour les anciennes versions Excel aussi.

Une clause de non-responsabilité est qu'il utilise des diagrammes de colonnes regroupés par colonnes avec des groupes jouant le rôle d'une "série". Cela se déroule comme suit:

Créez une plage de données qui se développe vers le bas: Entrez la description de l'image ici

Ensuite, préparez les plages nommées que nous allons charger dans le graphique. Vous créez des plages nommées en cliquant sur le ruban Formules -> Noms définis -> Définir le nom. Entrez la description de l'image ici

Définissez les noms dans Sheet, et pas dans le classeur – c'est une bonne pratique pour séparer les espaces de noms.

Créez les trois plages suivantes:

KPI1Range =OFFSET(Sheet1!$B$2;0;0;COUNTA(Sheet1!$B$2:$B$13);1) KPI2Range =OFFSET(Sheet1!$C$2;0;0;COUNTA(Sheet1!$C$2:$C$13);1) LabelRange =OFFSET(Sheet1!$A$2;0;0;COUNTA(Sheet1!$A$2:$A$13);1) 

Ensuite, créez un graphique à barres groupé et sélectionnez les données: Entrez la description de l'image ici

Pour la gamme des étiquettes, saisissez les éléments suivants: Entrez la description de l'image ici Etc pour KPI2

Ensuite, ajoutez les horizontales de manière similaire Entrez la description de l'image ici

Vous pouvez maintenant ajouter des lignes à votre tableau de données avec des KPI pour votre nouvelle société! Entrez la description de l'image ici

Si cela ne vous dérange pas d'utiliser VBA, vous pouvez suivre le protocole dans Dynamic Chart Source Data sur mon blog. L'article montre comment exécuter un code à partir d'un événement de modification de feuille de calcul pour mettre à jour les données sources du graphique, y compris à la fois la longueur de chaque série (lignes d'une table) et le nombre de séries (colonnes d'une table).

Si vous stockez vos données de graphique dans une table Excel, lorsque vous ajoutez une nouvelle ligne de données à la table, elle ajoutera automatiquement les données au tableau associé. Ce n'est PAS un graphique pivot – contrairement à un graphique pivot, toutes les séries de données sont conservées comme un graphique standard et vous avez un contrôle complet sur la personnalisation de votre graphique. La seule chose que vous devez faire est de s'assurer que vos données sont organisées de manière à pouvoir être stockées sous forme de tableau.

Note: Cette solution est pour Excel 2010 . Il peut fonctionner dans des versions antérieures, mais elles n'ont pas inclus la fonctionnalité de table.

EDIT: D'après le commentaire de Jon, j'ai vérifié qu'il fonctionne dans Excel 2010 , mais je n'ai pas d'autres versions à essayer, alors je ne suis pas sûr d' Excel 2007 . De plus, je l'ai essayé avec un diagramme à barres, un graphique xy et un diagramme de lignes et ils semblent tous fonctionner de la même façon. Il supprime également les séries lorsqu'elles sont supprimées de la table.