Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel
Macros et VBA Excel Vos questions relatives aux macros Excel, à l'utilisation de VBA et à l'automatisation de vos classeurs Excel.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 07/01/2012, 09h18   #1
Membre du Club
 
Inscription : septembre 2006
Messages : 197
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 197
Points : 44
Points : 44
Par défaut Source de données de graphique

bonjour
je souhaite adapter la serie de données d'un graphique
j'ai cree le code suivant qui ne fonctionne pas !!
Code :
1
2
3
4
5
6
7
8
9
10
11
12
Dim z
z = 184
    ActiveSheet.ChartObjects("Graphique 7").Activate
    ActiveChart.PlotArea.Select
    ActiveSheet.ChartObjects("Graphique 7").Activate
    While Cells(z, 7) <> ""   'tant que t est diff d'une cellule vide
                z = z + 1
            Wend    'sinon
   '*************************
    ActiveChart.SeriesCollection(1).XValues = Worksheets(2).Range(Cells(184, 7), Cells(z, 7)).Select
    ActiveChart.SeriesCollection(1).Values = Worksheets(2).Range(Cells(184, 10), Cells(z, 10)).Select
    Range("B146").Select
Je n'ai pas d'explications merci de votre aide
fmris est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/01/2012, 10h05   #2
Expert Confirmé Sénior
 
Homme Daniel
aucune
Inscription : septembre 2011
Messages : 2 004
Détails du profil
Informations personnelles :
Nom : Homme Daniel
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : aucune

Informations forums :
Inscription : septembre 2011
Messages : 2 004
Points : 4 037
Points : 4 037
Bonjour,

En supposant que "WorkSheets(2)" soit la feuille active :

Code :
1
2
3
4
5
6
7
8
9
Sub test()
Dim Plage As Range
'Réf.120107.xlsm
    With ActiveSheet.ChartObjects("Graphique 7").Chart.SeriesCollection(1)
        Set Plage = Range([G184], [G184].End(xlDown))
        .XValues = Plage
        .Values = Plage.Offset(, 3)
    End With
End Sub
__________________
Cordialement.

Daniel

Citation:
La plus perdue de toutes les journées est celle où l'on n'a pas ri.
Chamfort
Daniel.C est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/01/2012, 13h55   #3
Membre du Club
 
Inscription : septembre 2006
Messages : 197
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 197
Points : 44
Points : 44
J'ai inversé les lignes et colonnes
On part de GB7 à ....7 au lieu de G184
merci de me donner svp le nouveau code
fmris est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/01/2012, 14h41   #4
Expert Confirmé Sénior
 
Homme Daniel
aucune
Inscription : septembre 2011
Messages : 2 004
Détails du profil
Informations personnelles :
Nom : Homme Daniel
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : aucune

Informations forums :
Inscription : septembre 2011
Messages : 2 004
Points : 4 037
Points : 4 037
Si la plage des valeurs est décalée d'autant (à partir de GE7) :

Code :
1
2
3
4
5
6
7
8
9
Sub test()
Dim Plage As Range
'Réf.120107.xlsm
    With ActiveSheet.ChartObjects("Graphique 7").Chart.SeriesCollection(1)
        Set Plage = Range([GB7], [GB7].End(xlDown))
        .XValues = Plage
        .Values = Plage.Offset(, 3)
    End With
End Sub
__________________
Cordialement.

Daniel

Citation:
La plus perdue de toutes les journées est celle où l'on n'a pas ri.
Chamfort
Daniel.C est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h34.


 
 
 
 
Partenaires

Hébergement Web