使用VBA为每个工作表创建直方图

时间:2015-12-28 22:04:52

标签: excel vba excel-vba

您好我正在尝试为工作簿中的每个工作表创建一个直方图。在每个工作表中,我有两列值:
(1)输入范围(我要分析的数据),在我的代码中用“pasteRange”表示 (2)Bin Range(我想用于分析的区间),在我的代码中用“pasteRange2”表示。

我希望:
创建直方图表和直方图。该表应位于单元格AK23处,图表应跨越每个工作表中的N2:S20 到目前为止我的代码没有生成表格,每当我运行它时会弹出一个窗口,并要求我按OK键覆盖数据。如果我一直按下OK VBA会崩溃,如果我按下取消,只有最后一个工作表生成表格。工作表中只创建了一个图表,并且没有数据(图表代码是从运行宏中复制的)...

我不是CS专业,也不是VBA的新手 - 对不起,如果这个问题很愚蠢,非常感谢你的帮助!

我到目前为止尝试的代码是:

Dim I As Integer
Dim pasteRange As Range
Dim pasteRange2 As Range

WS_Count = ActiveWorkbook.Worksheets.Count

For I = 8 to WS_Count

Set pasteRange = ...
Set pasteRange2 = ...(these are irrelevant so are excluded here)

Application.Run "ATPVBAEN.XLAM!Histogram", pasteRange, ActiveSheet.Range("$AK$23"), pasteRange2, False, False, True, False

ActiveSheet.Shapes("Chart 1").IncrementLeft -31.2
ActiveSheet.Shapes("Chart 1").IncrementTop -1.2
ActiveSheet.ChartObjects("Chart 1").Activate
ActiveSheet.Shapes("Chart 1").ScaleWidth 1.3541666667, msoFalse, _
    msoScaleFromTopLeft

Next I

0 个答案:

没有答案