我已经修改了一段代码,该代码旨在根据可以着色的工作簿中的单元格为几个饼图(以及其中的切片)着色。
Sub SetColorScheme(cht As Chart, i As Long)
Dim y_off As Long, rngColors As Range
Dim x As Long
y_off = i Mod 10
'this is the range of cells which has the colors you want to apply
Set rngColors = ThisWorkbook.Sheets("colors").Range("A1:C1").Offset(y_off, 0)
With cht.SeriesCollection(1)
'loop though the points and apply the corresponding fill color from the cell
For x = 1 To .Points.Count
.Points(x).Format.Fill.ForeColor.RGB = _
rngColors.Cells(x).Interior.Color
Next x
End With
End Sub
问题是当我尝试编译该片段时出现错误下标超出范围(运行时错误 9)。有人有什么可能导致这种行为的建议吗?我总共有 8 个饼图,所以我也尝试输入 i Mod 8 而不是 Mod 10 这并没有改变错误。连接另一个子的错误(生成饼图的部分(因为这个子只是为它们着色?)有人可以提出任何建议吗?