首页 > 解决方案 > 着色位于其自身工作表中的饼图切片 - 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

标签: excelvbapie-chart

解决方案


推荐阅读