首页 > 解决方案 > 将 xlPrimary 和 xlSecondary 轴设置为百分比不起作用

问题描述

我无法将xlPrimaryANDxlSecondary轴设置为百分比。只有 1/2 设置为百分比,我不明白为什么。

我尝试使用这行代码将轴设置为百分比:

Set cht = Output.ChartObjects("Chart 1").Chart
    With cht
        .ChartArea.ClearContents
        .ChartType = xlColumnClustered
         xdata = EnregistrementsSecteurs
         ydata = EnregistrementsValeurs
            .SeriesCollection.NewSeries
            .SeriesCollection(1).XValues = xdata
            .SeriesCollection(1).Values = ydata
            .SeriesCollection(1).Name = "Rating"
        .Axes(xlPrimary).TickLabels.NumberFormat = "0.0%"
    End With

Set cht = Output.ChartObjects("Chart 1").Chart
    With cht
        .SeriesCollection.NewSeries
        .SeriesCollection(2).AxisGroup = xlSecondary
        .FullSeriesCollection(2).ChartType = xlLine
        .SeriesCollection(2).Values = TValues
        .SeriesCollection(2).Name = "Y"
        .SeriesCollection.NewSeries
        .SeriesCollection(3).AxisGroup = xlSecondary
        .FullSeriesCollection(3).ChartType = xlLine
        .SeriesCollection(3).Values = ThisWorkbook.Sheets("sheet").Range("D3:D12").Value
        .SeriesCollection(3).Name = "T"
        .Axes(xlSecondary).TickLabels.NumberFormat = "0.0%"
    End With

只有当我有一个规模时,它才有效。当我在同一张图表上获得 2 个刻度时,只有一个轴设置为 %。

上述代码的输出:

在此处输入图像描述

标签: excelvbacharts

解决方案


你很亲密。指定轴Type

.Axes(xlValue, xlSecondary).TickLabels.NumberFormat = "0.0%"

推荐阅读