J'ai fait plusieurs essais et ça ne fonctionne toujours pas :
Sub graphique()
Dim objRange As range
Set titre = Worksheets("Gate_data").range("AF33:AL33")
Set nov = Worksheets("Gate_data").range("AG34:AL34")
Set dec = Worksheets("Gate_data").range("AG35:AL35")
Set jan = Worksheets("Gate_data").range("AG36:AL36")
Set avr = Worksheets("Gate_data").range("AG39:AL39")
For Each n In nov
If n <> 0 Then
Set novdata = range(Cells(34, 32), Cells(34, 38))
End If
Next n
For Each d In dec
If d <> 0 Then
Set decdata = range(Cells(35, 32), Cells(35, 38))
End If
Next d
For Each j In jan
If j <> 0 Then
Set jandata = range(Cells(36, 32), Cells(36, 38))
End If
Next j
For Each a In avr
If a <> 0 Then
Set avrdata = range(Cells(39, 32), Cells(39, 38))
End If
Next a
'Set myrng = range("novdata", "decdata").Select
Set objRange = Union(titre, novdata, decdata, jandata, avrdata)
objRange.Select
ActiveSheet.Shapes.AddChart2(216, xlBarClustered).Select
ActiveChart.SetSourceData Source:=objRange
ActiveChart.HasLegend = True
ActiveChart.PlotBy = xlColumns
End Sub