需要帮助应用统一的最大值。无论最大值如何,多个条形图的高度。 Y轴值

时间:2015-09-23 15:32:47

标签: excel charts

我不确定我是否写得恰到好处,但我想让我的条形图全部保持在同一高度,无论最大值如何。值。例如,如果在一个条形图上我的最大值。 Y轴上的值为7,另一个条形图为最大值。 Y轴上的值是10我希望两个条形图的高度相同。 Here is a reference for what I'm trying to do.注意带有最大值的图表。值为10,另一个为11,高度相同。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

试试这个。

将此例程放在标准代码模块中:

Sub EqualChartHeights()
    Const SPEC_TOP = 100
    Const SPEC_HEIGHT = 175
    Dim c
    For Each c In ActiveSheet.ChartObjects
        c.Top = SPEC_TOP
        c.Chart.ChartArea.Height = SPEC_HEIGHT
        c.Chart.PlotArea.Height = SPEC_HEIGHT
    Next
End Sub

切换到带有嵌入式图表的工作表,然后按Atl-F8显示宏对话框。

运行EqualChartHeights

那就是它。

您可以通过编辑前两行来管理高度和最高值。

注意:可以轻松扩展此技术以同步其他图表属性,例如宽度,网格线,刻度线等。

<强>更新

根据您的更新要求,请尝试以下修订程序:

Sub EqualChartHeights()
    Const SPEC_HEIGHT = 175
    Dim c, p, MaxPoint
    For Each c In ActiveSheet.ChartObjects
        With c.Chart
            MaxPoint = 0
            For Each p In .SeriesCollection(1).Values
                If p > MaxPoint Then MaxPoint = p
            Next
            .Axes(xlValue).MaximumScale = MaxPoint
            .ChartArea.Height = SPEC_HEIGHT
            .PlotArea.Height = SPEC_HEIGHT
        End With
    Next
End Sub