运行用户窗体按钮的宏

您好,

我写了一个宏,当它被点击(在表1)形状运行。 但我想也从一个窗体按钮运行它,我怎么调用模块在宏?

获取溢出错误。

谢谢

--------------解决方案-------------

这可能是因为命名范围:

范围(“Form_Year_Range”)

范围(“Chart_range”)

大概只有工作表Sheet1上存在。

你必须非常小心,在宏观可以在任何表运行的方式来指定范围。

说的形状已被asigned运行标准模块中称为StandardMacro宏。

打开VBA用户窗体,然后右键单击该按钮。 选择查看代码,并输入以下内容:

私人小组CommandButton1_Click()
呼叫StandardMacro
结束小组

我努力了

私人小组Update_Click()
呼叫摘要
结束小组

但我得到

编译错误:预期的变量或过程,而不模块。

我想补充一点,工作簿中有4张,从形状表1中运行时宏工作正常,但如果我画在任何其他表另一个形状(并从那里运行的话)并分配相同的宏它不工作。 在用户窗体上的命令按钮给了我同样的结果。 我想知道如果事情是缺少宏,因为我不指定任何工作表?

子摘要()
iYear =年(日)
昏暗中号作为范围
昏暗n作为范围
昏暗T作为范围
设定M =范围(“G6:G377”)。偏移量(0,Application.Match(iYear,范围(“Form_Year_Range”),0))
设定N =范围(“D381”)。偏移(Application.Match(iYear,范围(“Chart_range”),0))
设置T =范围(“D382:D430”)

“求和和写入年合计细胞中的”数据“表
用N
.Offset(0,1)。价值= Application.Sum(M.Offset(0,0))
.Offset(0,2)。价值= Application.Sum(M.Offset(0,1))
.Offset(0,3)。价值= Application.Sum(M.Offset(0,2))
.Offset(0,4)。价值= Application.Max(M.Offset(0,3))
.Offset(0,5)。价值= Application.Convert(N.Offset(0,4),“み”,“公里”)
.Offset(0,6)。价值= Application.Max(M.Offset(0,0))
.Offset(0,7)。价值= Application.Convert(N.Offset(0,6),“み”,“公里”)
.Offset(0,8)。价值= Application.Max(M.Offset(0,4))
.Offset(0,9)。价值= Application.Convert(N.Offset(0,8),“み”,“公里”)
.Offset(0,10)。价值= Application.Sum(M.Offset(0,3))/ Application.CountIf(M.Offset(0,0),“> 0”)
.Offset(0,11)。价值= Application.Convert(N.Offset(0,10),“み”,“公里”)'
.Offset(0,12)。价值= Application.CountIf(M.Offset(0,0),“> = 100”)
.Offset(0,13)。价值= Application.CountIf(M.Offset(0,1),“> = 100”) - N.Offset(0,12)
.Offset(0,14)。价值= Application.CountIf(M.Offset(0,0),“> 0”)
.Offset(0,15)。价值= Application.Sum(M.Offset(0,5))
结束与

结束小组

谢谢

用户窗体的按钮现在运行正常,我改名模块东西比宏的名称不同。 我不能说出一个模块相同的宏?

我最后的问题是,如果我在表1,我只能运行宏,我得到一个错误othrwise。

这可能是因为命名范围:

范围(“Form_Year_Range”)

范围(“Chart_range”)

大概只有工作表Sheet1上存在。

你必须非常小心,在宏观可以在任何表运行的方式来指定范围。

分类:办公室 时间:2015-03-15 人气:0
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 2.956 (s). 10 q(s)