excel - 着色位于其自身工作表中的饼图切片 - excel vba
问题描述
只要饼图和源数据位于同一张表 (Sheet1) 中,下面的 Excel 宏就可以正常工作。将饼图移动到自己的工作表 (Sheet2) 时,颜色编码部分在 Sheet1 中的单元格上工作正常,尽管饼图上没有颜色编码。有人可以帮助调整以下功能,以便无论饼图在 Excel 工作簿中的位置如何,它都会被执行?饼图在 Sheet1 中时的名称为 Chart1。
Sub Colour_Cell()
For Each cell In Range("A1:A3")
Select Case cell.Value
Case "time1"
cell.Interior.Color = RGB(255, 0, 0)
Case "time2"
cell.Interior.Color = RGB(0, 255, 0)
Case "time3"
cell.Interior.Color = RGB(0, 0, 255)
Case Else
cell.Interior.Color = xlNone
End Select
Next
For Each ch In ActiveSheet.ChartObjects
For Each ser In ch.Chart.SeriesCollection
s = Split(ser.Formula, ",")
For i = 1 To UBound(ser.Values)
ser.Points(i).Interior.Color = Range(s(1)).Cells(i).Interior.Color
Next i
Next ser
Next ch
End Sub