Bonjour,

Cette question date un peu mais étant en stage, je rencontre le même problème.

Pour modifier la plage du ActiveChart.SeriesCollection(1).XValues il faut mettre la plage au format VBA, et non Excel.

Par exemple il faut mettre:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
ActiveChart.SeriesCollection(1).XValues = Worksheets("Ma_feuille").Range("A1: D1")
Mais maintenant je rencontre un autre problème:
Comment lui attribuer une plage discontinue ?

En effet, je souhaiterai sélectionner des données du style:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Worksheets("Ma_feuille").Range("A1: D1, "F1:J1")
Mais dans ce cas, VBA réagis comme si j'avais sélectionner le plage A1:J1.

Pouvez vous me renseigner ?
Merci.

EDIT:

Je viens de trouver la réponse. Il faut mettre une Union de plage

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
Dim maRange As Range
Set maRange = Union(Worksheets("ma_feuille").Range("C28:G28"), Worksheets("ma_feuille").Range("J28:N28"))
 
ActiveChart.SeriesCollection(1).Values = maRange
Voilà !