更改直方图的bin大小

时间:2018-03-22 09:04:01

标签: excel vba excel-vba charts histogram

我想要一个宏,可以让我确定直方图的出价宽度。

我记得改变实际bin宽度的操作,然后插入输入框以允许我更动态地执行此操作。

Sub ChangeBinSize()

    myValue = InputBox("Choose the bin width for the Histogram ?")

    ActiveSheet.ChartObjects("Chart 4").Activate

    ActiveChart.FullSeriesCollection(1).Select

    ActiveChart.Axes(xlCategory).Select

    ActiveChart.ChartGroups(1).BinWidthValue = myValue

End Sub

然而,在运行宏之后,图表上没有任何变化,我哪里出错?

1 个答案:

答案 0 :(得分:1)

您没有指定正在使用的Excel版本。

您没有指定如何创建直方图。

如果您使用新的Excel 2016直方图,则无法使用VBA对其进行操作,因为此新图表类型尚未将其所有属性公开给Excel VBA对象模型。

在早期版本的Excel中,您可以使用Analysis ToolPak计算数据并创建生成的直方图。

通常,Excel的内置直方图不太适合动态更改源数据。

您可能想要破解它并使用动态bin大小等构建自己的数据模型,然后使用动态范围名称来构建Excel图表。根据您的Excel版本,您可以使用Power Pivot数据模型来帮助进行计算。