7

how to run a sub stored in another worksheet's module?

worksheet1

sub endDay()
    'something here
end sub

worksheet2

sub reCalc()
    'something here
end sub

I want recalc to be able to run on its own but I want to be able to press the button for "endDay", have it do its thing, and then preform "recalc" at the end instead of pressing one and then go to sheet2 to press the other.

Can someone give me a sample so I can have an idea where to begin?

4

4 回答 4

14

查看工作表的代码名称 - 您可以在 Visual Basic 编辑器的树视图中看到它们。通常它们被命名为Sheet1,Sheet2等(独立于实际工作表名称,显示在括号中)。在您的代码中使用此名称)而不是,Worksheets("Sheet1")您还将获得一个自动完成列表 - 使用您的子!

因此,这将完成这项工作:

Sheet1.reCalc
于 2013-01-29T06:53:32.970 回答
8
sheets("worksheet2").reCalc

可能是你所追求的

于 2013-01-28T23:21:04.773 回答
2

我知道是 2 年后,但今天我正在寻找同样的东西。至于工作表中的 subs 可能是私有的,这是一个很好的解决方案:

Sub Maina()
    Run "tbl_Input.btn_main_Click"
End Sub

tbl_Input是工作表的 VBA 名称,而不是标题。

于 2015-11-09T15:43:56.027 回答
1

Call Module1.reCalc如果 Sub 在 Module1 中,也应该可以正常工作。可能不需要“Module1”。尽管如此。

于 2015-07-17T21:26:36.703 回答