Je me retourne vers vous pour une petite question...
Je cherche à définir de manière correcte une plage de données discontinue sous la forme suivante : Une cellule sur deux.
En fait je désire tracer un graphique à partir d'une macro. Ce graph sera définit sur deux colonnes (abscisse, ordonnée) mais seulement une cellule sur deux.
Voici les deux lignes de mon code que je cherche à modifier :
Code:
ActiveChart.SeriesCollection(1).XValues = Range("A1:A20") 'Valeurs en abscisse
ActiveChart.SeriesCollection(1).Values = Range("B1:B20") 'Valeurs en ordonnée
Mais je désire remplacer "Range("A1:A20")" et "Range("B1:B20")" par une autre plage qui serait définie par une cellule sur deux (plage discontinue).
Voici le code que je propose mais qui ne fonctionne pas du tout car mal définit !
Code:
Dim Abscisse As Range, Ordonnée As Range
Dim i As Long
For i = 1 To 20 Step 2
Abscisse = Union(Range("A" & i))
Ordonnée = Union(Range("B" & i))
Next
ActiveChart.SeriesCollection(1).XValues = Abscisse 'Valeurs en abscisse
ActiveChart.SeriesCollection(1).Values = Ordonnée 'Valeurs en ordonnée
Qui aurait la gentillesse de proposer une solution à mes soucis ?
Re : Définir une plage de cellules discontinues de manière correcte
Bonjour SERIEUXETCOOL,
à priori, tu peux changer ces lignes :
VB:
For i = 1 To 20 Step 2
Abscisse = Union(Range("A" & i))
Ordonnée = Union(Range("B" & i))
Next
en
VB:
Dim Abscisse as Range, Ordonnée as Range
Set Abscisse = Range("A1")
Set Ordonnée = Range("B1")
For i = 3 To 20 Step 2
Set Abscisse = Union(Abscisse, cells(i, 1))
Set Ordonnée = Union(Ordonnée, cells(i, 2))
Next