我想为堆积条形图选择 .SetSourceData 的范围。
我的范围是不连续的。开始日期在 G 列中,其余数字在 V 到 AI 列中计算。
目前这只是绘制 V 列到 AI 的图表,它使用 G 列作为横轴标签。
我尝试将水平轴标签范围(E 列)添加为 Union 的第一个 .range 参数,但随后将 E 和 F 列(不确定 F 来自何处)显示为水平轴标签。G列无处可寻。
有没有办法用 SetSourceData 做到这一点,还是我必须为所有 15 个系列单独设置 SeriesCollection?
Sub Create_Chart()
'
' Create_Chart Macro
'
Dim ganttChart As ChartObject
Dim sourceRange As Range
With Sheets("Projects")
Set sourceRange = Union(.Range("G1:G70"), .Range("V1:AI70"))
End With
Set ganttChart = ActiveSheet.ChartObjects.Add(100, 50, 200, 200)
With ganttChart
With .Chart
.ChartType = xlBarStacked
.Legend.Delete
.Parent.Width = 1224
.Parent.Height = 828
.SetSourceData Source:=sourceRange, PlotBy:=xlColumns
.Location Where:=xlLocationAsNewSheet
With .Axes(xlValue)
'.MinimumScale = 41428
'.MaximumScale = 41607
.MajorUnit = 7
.TickLabels.NumberFormat = "m/d"
.TickLabels.Font.Size = 6
.TickLabels.Font.Name = "Calibri"
End With
With .Axes(xlCategory)
.ReversePlotOrder = True
.TickLabelSpacing = 1
.TickLabels.NumberFormat = "@"
.TickLabels.Font.Size = 6
.TickLabels.Font.Name = "Calibri"
End With
End With
End With
End Sub