Excel VBA使用条件格式从单元格填充饼图颜色
我没有使用VBA的经验,我试图根据Excel 2010中数据单元格的颜色,将所有饼图格式化为一个活动图表。我从http://datapigtechnologies.com/博客/ index.php的/彩色饼图切片到匹配他们的源细胞/
Sub ColorPies() Dim cht As ChartObject Dim i As Integer Dim vntValues As Variant Dim s As String Dim myseries As Series For Each cht In ActiveSheet.ChartObjects For Each myseries In cht.Chart.SeriesCollection If myseries.ChartType <> xlPie Then GoTo SkipNotPie s = Split(myseries.Formula, ",")(2) vntValues = myseries.Values For i = 1 To UBound(vntValues) myseries.Points(i).Interior.Color = Range(s).Cells(i).Interior.Color Next i SkipNotPie: Next myseries Next cht End Sub
此代码运行良好,但无法从条件格式中选取颜色。
我碰到这个解决scheme的VBA阅读条件格式的颜色:
Selection.FormatConditions(1).BarColor.Color
但是我一直无法在上面的VBA块中实现它。 我尝试用它的不同部分replaceInterior.Color,似乎没有工作。 有谁知道一个简单的方法来做到这一点?
先谢谢你!
既然你有2010,你可以使用DisplayFormat属性:
For i = 1 To UBound(vntValues) myseries.Points(i).Interior.Color = Range(s).Cells(i).DisplayFormat.Interior.Color Next i