在Excel数据透视图中更改轴条的颜色

时间:2017-10-07 10:18:12

标签: excel excel-vba pivot-table pivot-chart vba

我在Excel 2016中有这个PivotChart

enter image description here

如您所见,轴字段中有两个属性:“Date”和“Category”。

“类别”有两个可能的值:ASC和SBT。

现在,与这两个值相关的条形图具有相同的颜色(红色和蓝色)。

我希望如果“类别”是SBT,则条形的颜色必须不同(例如,黄色和绿色)。我怎样才能做到这一点?

由于

1 个答案:

答案 0 :(得分:0)

试试这个。

Sub test()
    Dim obj As ChartObject
    Dim cht As Chart
    Dim pnt As Point
    Dim Ws As Worksheet
    Dim s As String

    Set Ws = ActiveSheet
    Set obj = Ws.ChartObjects(1)
    Set cht = obj.Chart

    With cht
        .ApplyDataLabels
        For Each pnt In .SeriesCollection(1).Points
            With pnt.DataLabel
                .ShowCategoryName = True
                .ShowValue = False
            End With
            s = pnt.DataLabel.Text
            If InStr(s, "SBT") Then
               pnt.Format.Fill.ForeColor.RGB = RGB(255, 2255, 0)
            End If
             With pnt.DataLabel
                .ShowCategoryName = False
            End With
        Next pnt
        For Each pnt In .SeriesCollection(2).Points
            With pnt.DataLabel
                .ShowCategoryName = True
                .ShowValue = False
            End With
            s = pnt.DataLabel.Text
            If InStr(s, "SBT") Then
               pnt.Format.Fill.ForeColor.RGB = RGB(29, 219, 22)
            End If
             With pnt.DataLabel
                .ShowCategoryName = False
            End With
        Next pnt
    End With
End Sub