[VBA - Excel 2000] Plage de données d'un graphique

vsan

XLDnaute Junior
[En cours, toujours...][VBA - Excel 2000] Plage de données d'un graphique maj auto

Bonjour à tous,

J'aimerai automatiser la mise à jour de mes graphiques en utilisant les macros.
J'ai enregistré mes actions et j'ai tenté d'introduire un paramètre "numero" afin d'automatiser tout ça...

Je vous met un bout de code :

Code:
Sub Macro1()

'
Dim numero As Integer

numero = Cells(2, 20).Value

'
'Graph Evolution du nombre de pièces produites
    ActiveSheet.ChartObjects("Graphique 5").Activate
    ActiveChart.ChartArea.Select
    ActiveChart.SeriesCollection(1).XValues = "='Tableau ventilé'!cells(1,3):cells(2,numero)"
    ActiveChart.SeriesCollection(1).Values = "='Tableau ventilé'!cells(17,3):cells(17,numero)"
    ActiveChart.SeriesCollection(2).Values = "='Tableau ventilé'!cells(18,3):cells(18,numero)"
    ActiveChart.SeriesCollection(3).Values = "='Tableau ventilé'!cells(19,3):cells(19,numero)"
    ActiveChart.SeriesCollection(4).Values = "='Tableau ventilé'!cells(20,3):cells(20,numero)"
    ActiveWindow.Visible = False
    Windows("2007 - Tableau de bord.xls").Activate

    Cells(2, 20).Select
    ActiveCell.FormulaR1C1 = numero + 1
    Range("A1").Select
    
End Sub

ça bug à la fin de la ligne :
ActiveChart.SeriesCollection(1).XValues = "='Tableau ventilé'!cells(1,3):cells(2,numero)"

Je pense que j'ai mal écrit les "range" et autres plages de données.
Mais je bloque, pouvez-vuos m'aider à ce sujet?

Merci d'avance,
Vincent
Et ça bug à la fin de la ligne
 
Dernière édition:

mutzik

XLDnaute Barbatruc
Re : [VBA - Excel 2000] Plage de données d'un graphique

re, c'est encore moi,

voici un exemple de graph 'dynamique'
tu peux ajouter des valeurs (titre + valeur) ou en enlever, excel les rajoute automatiquement (ou les enleve) dans le graph

nb, si tu changes les valeurs, elles se mettent également à jour
 

Pièces jointes

  • test.xls
    14.5 KB · Affichages: 623
  • test.xls
    14.5 KB · Affichages: 623
  • test.xls
    14.5 KB · Affichages: 629

vsan

XLDnaute Junior
Re : [VBA - Excel 2000] Plage de données d'un graphique

Re-Bonjour !

En fait, je me suis mal expliqué (j'étais assez pressé hier, désolé!)
Disons que dans mon tableau source, chaque semaine je viens mettre une nouvelle colonne.
Je voudrai donc que les graph la prennent en compte seulement une fois qu'elle est ajoutée!
Parce que sinon, ça me fait des 0 et mes courbes de tendances sont faussées!

Voila, je m'en vais tester ton fichier test! :)
 

vsan

XLDnaute Junior
Re : [VBA - Excel 2000] Plage de données d'un graphique

Re-bonjour,

Pour répondre à ta question mutzik, je souhaite automatiser cette mise à jour, car mes données étant en ligne (et non pas en colonne), la màj automatque des graphiques de marche pas, et comme mes cellules ne sont pas vides (formule de recherche dans un autre fichier...) les graphiques mettent un point à 0 au lieu de rien, ce qui fausse les moyennes et courbes de tendance!
Voilà pourquoi...
:)

Je pense que le problème vient de là :
lorsque "j'enregistre manuellement" la màj des graphique, j'ai ce code là :
Code:
ActiveChart.SeriesCollection(1).XValues = "='Tableau ventilé'!R1C3:R2C27"
ActiveChart.SeriesCollection(1).Values = "='Tableau ventilé'!R17C3:R17C27"

et c'est lorsque je "paramétrise" le numéro de la dernière colone que ça ne marche plus :
Code:
ActiveChart.SeriesCollection(1).XValues = "='Tableau ventilé'!cells(1,3):cells(1,numero))"
ActiveChart.SeriesCollection(1).Values = "='Tableau ventilé'!cells(17,3):cells(17,numero)"

mon soucis est donc : comment traduire ces plages de données...

Merci d'avance si qqn peut m'aider sur ce coup-là!
 

manrow

XLDnaute Nouveau
Re : [VBA - Excel 2000] Plage de données d'un graphique

Bonjour a tous,

Si depuis quelqu'un a une reponse a apporter je suis preneur !!

Je dispose d'une plage de donnees a laquelle vient s'ajouter une ligne chaque semaine. J'aimerais afficher un graphique sur les 10 dernieres lignes de ma plage de donnees (Je conserve les autres tout de meme en archive, mais je ne souhaite pas les "visualiser").

J'ai essayer via l'enregistreur de macro, mais lorsque je fais glisser la plage de donnees source avec la souris, l'enregistreur ... n'enregistre rien. Quelqu'un a t'il une solution ?

D'ailleurs je me demande s'il est preferable de "mettre a jour ma plage de donnees", ou bien de supprimer puis recreer un nouveau graphique chaque semaine ??

Merci d'avance de votre aide,

Manrow
 

maty

XLDnaute Nouveau
Re : [VBA - Excel 2000] Plage de données d'un graphique

Bonjour à tous,

Mutzik, le graphe dynamique que tu as posté est exactement ce qu'il me faut ! par contre peux-tu s'il te plaît me dire ce que tu as fait pour faire que ta plage de donnée prenne en compte une ligne supplémentaire dès qu'on la remplit ?

Merci beaucoup
 

Discussions similaires

Réponses
1
Affichages
205