VBA - 图表颜色不会改变

时间:2016-08-31 09:37:31

标签: excel vba

我有这个代码来创建图表:

Sub CreateChart()
    Dim rng As Range
    Dim cht As Object
    Set rng = ActiveSheet.Range("A4:C8")
    Set cht = ActiveSheet.Shapes.AddChart2
    cht.Chart.SetSourceData Source:=rng, PlotBy:=xlColumns
    cht.Chart.ChartType = xlBarStacked
    cht.SeriesCollection(1).Interior.Color = RGB(255, 255, 255)
End Sub

但系列1条不会改变颜色。

你能帮忙吗?

谢谢!

2 个答案:

答案 0 :(得分:1)

请参阅下面的答案,它以不同的方法在您的帖子中实现您想要的内容,让您在未来拥有更大的灵活性:

Option Explicit

Sub CreateChart()

Dim rng             As Range
Dim cht             As ChartObject
Dim cht_Series      As Series

Set rng = ActiveSheet.Range("A4:C8")

' in brackets (Left, Width, Top, Height) >> modify according to your needs
Set cht = ActiveSheet.ChartObjects.Add(100, 100, 100, 100)

With cht
    .Chart.SetSourceData Source:=rng
    .Chart.PlotBy = xlColumns
    .Chart.ChartType = xlBarStacked
End With

Set cht_Series = cht.Chart.SeriesCollection(1)
' this will result to white (by your post) >> modify to your desired color
cht_Series.Format.Fill.ForeColor.RGB = RGB(255, 255, 255)

End Sub

答案 1 :(得分:0)

试试这个:

max

并选择颜色索引表中的值。 5对应蓝色。您可以获取颜色索引表here