graphe "bulles" avec plage de données variables

jojo57

XLDnaute Nouveau
Salut, j'ai besoin de votre savoir svp. En l'espace d'un mois j'ai beaucoup appris grace à vous et mon tableau de bord pour mon stage avance bien. La j'ai un problème, et sincèrement je ne sais pas si vous trouverez une solution, et même si il y en a une.

J'ai un fichier simplifié en fichier joint. Donc pour expliquer rapidement le fichier:

-on a une base de données, et c'est la qu'on entre une donnée:cool: ! Donc pour le moment, j'ai 3 lignes (renault peugeot citroen).

-Si je rajoute une autre constructeur comme Fiat en dessous des trois lignes dans la base de donnees, alors la feuille 2 "tableau" (qui récapitule mes calculs) va rajouter des données également (grace aux formules que j'étire jusqu'a la ligne 169 mais ca pourrait etre infini)

-Donc mon problème est le suivant: mon graphe est assez complexe puisqu'il prend en compte 2 variables, le nom et la taille. Pour mes données du tableau jusqu'a present, comme ma plage de données était fixe, je rentrais mes données une par une après avoir insérer le graphique. Le probleme, c'est si c'est variable. comment faire, par exemple si je rajoute fiat, ou 10 autres constructeurs, que mon graphe se mette à jour automatiquement?

-J'ai essayé de rentrer une par une des cases vides dans mon graphe (par exemple la ligne A9 dans "Tableau" ). Bien sur comme il n'ya pas de données, ca n'affiche rien dans le graphe, sauf la legende ou il y a un point avec aucune inscription à coté

Donc voila, je voulais savoir si c'etait possible de faire un graphe en fonction d'une plage variable? merci d'avance
 

Pièces jointes

  • graphe plage données variables.xls
    78.5 KB · Affichages: 199
  • graphe plage données variables.xls
    78.5 KB · Affichages: 205
  • graphe plage données variables.xls
    78.5 KB · Affichages: 209

Dranreb

XLDnaute Barbatruc
Re : graphe "bulles" avec plage de données variables

Bonjour.
Ennuyeux ça, le point dans la légende. Alors je pense qu'une macro serait la bien venue.
Demandez à enregistrer une nouvelle macro et créez pour une des dernières fois j'espère à la main une série supplémentaire. Après on bidouillera ensemble le code engendré pour le rendre autoadaptatif et pour qu'il s'exécute au moment opportun.
À+
 

jojo57

XLDnaute Nouveau
Re : graphe "bulles" avec plage de données variables

Merci pour la reponse.

Le problème c'est que je maitrise pas les macro, encore moins les codes VBA (j'ai commandé un livre cette semaine la dessus :D).

J'ai ouvert l'enregistreur de macro, j'ai enregistré, j'ai rajouté une donnée dans le graphe dela ligne A9 vide. J'ai fermé, et arrété l'enregistrement. J'ai relancé la macro, et il me rajoute la serie 5 dans la legende, mais il n'y a pas les données enregistrées quand je vais voir dans les données sources du graphe, c'est vide.

Enfin je fais surement mal ce que tu me demandes. Je ne connais pas encore les macro.

Il n'y a pas une autre moyen sans macro? Ou alors m'apprendre comment vous faites?

Moi j'avais pensé également à enlever la légende, et mettre les noms sur les bulles comme ca les données vides elles n'apparaissent pas normalement. Je sais qu'on peut le faire avec excel 2010, mais sur 2003 je ne sais pas?
 

Dranreb

XLDnaute Barbatruc
Re : graphe "bulles" avec plage de données variables

Ah mais oui, enlever la légende c'est peut être le plus simple.
Sinon... il a du enregistrer les instructions qui rajoutent une série alors. Mais, pourquoi vide ?
Si on doit exécuter la création d'une série c'est que tout sera renseigné. Bon j'aii fait la manoeuvre comme j'ai cru de mon coté. En faisant Alt+F11 puis selectionnant dans l'explorateur de projet, à la rubrique Modules le module Module1, il m'y a mis:
VB:
Option Explicit

Sub Macro1()
'
' Macro1 Macro
' Macro enregistrée le 19/05/2011 par bluck
'

'
    ActiveSheet.ChartObjects("Graphique 1").Activate
    ActiveChart.PlotArea.Select
    ActiveChart.ChartType = xlBubble
    ActiveChart.ChartType = xlBubble
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection(4).XValues = "=Tableau!R9C4"
    ActiveChart.SeriesCollection(4).Values = "=Tableau!R9C5"
    ActiveChart.SeriesCollection(4).Name = "=Tableau!R9C1"
    ActiveChart.SeriesCollection(4).BubbleSizes = "='Base de données'!R6C5"
    ActiveChart.ChartType = xlBubble
End Sub
Pas pareil chez vous ?
Mais ça c'est brut de fonderie, il faut le travailler...
 

jojo57

XLDnaute Nouveau
Re : graphe "bulles" avec plage de données variables

J'ai ca aussi mais ca donne rien en exécutant la macro. Enlever la legende ca marche, mais le probleme, c'est que quand j'aurai 150 entreprises, les bulles avec le nom a coté ca sera illisible. comment faire pour conserver la légende, et ajouter les plages vides qui n'ont pas encore de données dans le graphique (a partir de la ligne A9), et que les points vides dans la legende n'apparaissent pas...dur dur.

En plus ca va etre long de rentrer les données de 150 entreprises (environ, c'est variable) une par une, ya pas un autre moyen avec un graphique bulle?

PHP:
Sub buble()
'
' buble Macro
' Macro enregistrée le 19/05/2011
'

'
    ActiveSheet.ChartObjects("Graphique 1").Activate
    ActiveChart.ChartArea.Select
    ActiveChart.ChartType = xlBubble
    ActiveChart.ChartType = xlBubble
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection(5).XValues = "=Tableau!R10C4"
    ActiveChart.SeriesCollection(5).Values = "=Tableau!R10C5"
    ActiveChart.SeriesCollection(5).Name = "=Tableau!R10C1"
    ActiveChart.SeriesCollection(5).BubbleSizes = "='Base de données'!R7C5"
    ActiveChart.ChartType = xlBubble
End Sub
 

Pièces jointes

  • graphe plage données variables.xls
    90 KB · Affichages: 122
  • graphe plage données variables.xls
    90 KB · Affichages: 131
  • graphe plage données variables.xls
    90 KB · Affichages: 128

Dranreb

XLDnaute Barbatruc
Re : graphe "bulles" avec plage de données variables

Je n'ai pas dit que c'était une macro à exécuter telle quel ensuite.
C'est juste l'architecture générale et mal fichue des instructions à mettre pour créer une nouvelle série dans votre graphique.
Mon idée c'est de vous faire écrire à partir de ce modèle une autre macro qui supprime les séries en trop où rajoute les séries nécessaires pour que tout le tableau soit exactement représenté.

Héhé... Mais je viens de découvrir un truc intéressant (oui parce que des graphique à bulbe j'en ai pas vu pousser beaucoup): Dans Outils, Options, onglet Graphique si la case "Tracer les cellules visibles seulement" est cochée, les séries correspondant à des ligne masquées de la liste n'apparaissent pas dans la légende !. Et la 2ième bonne nouvelle c'est que ça marche aussi si la masquage résulte d'un filtre automatique ! ...À condition de cocher un autre choix que "Déplacer et dimensionner le graphique avec les cellules" dans le format de la zone de traçage.
À+
 

jojo57

XLDnaute Nouveau
Re : graphe "bulles" avec plage de données variables

OK pour la macro, mais n'ayant aucune connaissance sur les macro pour le moment, ca va etre chaud.

J'ai fait un filtre automatique sur mes colonnes, et quand je mets les cellules non vides, le graphe disparait...

ca commence un peu a m'ennerver, je cherche sur le net depuis ce matin, et c'est a croire qu'il y a personne dans le même cas que moi : tracer un graphique bulle avec plage variable !!!!

Mais merci de m'aider, c est sympa
 

Dranreb

XLDnaute Barbatruc
Re : graphe "bulles" avec plage de données variables

J'ai eu le même incident en essayant, qu'est ce que vous croyez ? mais j'ai tout de suite compris que c'est parce qu'il est demandé quelque part que le graphique soit déplacé et redimensionné en fonction des cellules.
Si au format de la zone de graphique, onglet propriétés on coche carrément la 3ième option: Ne pas déplacer ou dimensionner avec les cellules, le graphique ne bouge plus.
 

jojo57

XLDnaute Nouveau
Re : graphe "bulles" avec plage de données variables

j'ai également cherché le graphe mais je ne l'ai plus retrouvé, enfin bref. Ca a l'air de marcher, mais il n'ya pas un moyen de faire une macro qui fasse le meme travail que le filtre auto, c'est a dire masquer dans mon tableau les cellules vides? ca serait bien, parce que le probleme du filtre, j'ai essayé, si on touche au decroissant/croissant, ou autre chose, ca fausse tout dans le graphe. Et étant en stage, mon travail doit etre le plus simple possible pour les personnes qui utiliseront mon outil. merci bcp dranreb
 

Dranreb

XLDnaute Barbatruc
Re : graphe "bulles" avec plage de données variables

Oui, c'est faisable. Plus le temps ce soir
Enregistrez une macro et masquez une ligne
Mettez les instruction autour qui le déroulent dans une boucle.
Bonne soirée
 

jojo57

XLDnaute Nouveau
Re : graphe "bulles" avec plage de données variables

Bonjour, j'ai enregistré la macro et masquer une ligne, ca donne ca:

Sub MASQUER_LIGNE()
'
' MASQUER_LIGNE Macro
' Macro enregistrée le 20/05/2011
'

'
Rows("9:9").Select
Selection.EntireRow.Hidden = True
End Sub

Mais de la, à mettre des conditions? Je connais pas dutout le VBA. il faudrait faire quelque chose du genre : dans le tableau de A6:169, si le tableau A6 à A169 possède des cellules vides, masquer ces lignes....

Mais en code, je ne sais pas.
 

Dranreb

XLDnaute Barbatruc
Re : graphe "bulles" avec plage de données variables

Bonjour.
J'apprécie beaucoup votre effort pour ébaucher quelque chose.
Je continue si vous le voulez bien à ne vous fournir qu'une piste peu mais bien jalonnée. Courage.
Conseil: Mots clés VB à chercher dans l'aide: Dim, Object, Set, For, Next
Information utile: Lorsqu'il n'est pas une propriété de certains objets Excel, Range est soit un type de donnée objet fourni par excel, soit une méthode rendant un objet de ce type.
Select n'est quasiment jamais nécessaire dans les macros définitives.
À+
 

Discussions similaires

Réponses
4
Affichages
277

Statistiques des forums

Discussions
312 196
Messages
2 086 097
Membres
103 116
dernier inscrit
kutobi87