通过一个按钮控制多个按钮

时间:2017-01-16 15:14:26

标签: vba excel-vba excel

我创建了10个不同的按钮,每个按钮都分配了一个唯一的SUB()。 我现在想要通过主按钮单击执行所有10个按钮。那可能吗 ?有人可以指导我吗?

4 个答案:

答案 0 :(得分:1)

您可以调用您的宏

Sub AllMAcros()
    macro1
    Macro2
    Macro3
End Sub

无论宏名称是什么

答案 1 :(得分:1)

假设你的"主人"按钮以" MasterBtn"命名。您只需添加以下单击事件处理程序:

Private Sub MasterBtn_Click()
    Dim ctrl As Control

    For Each ctrl In Me.Controls
        If TypeName(ctrl) = "CommandButton" Then If ctrl.name <> "MasterBtn" Then ctrl.Value = True
    Next
End Sub

这种方法是:

  • &#34;鲁棒&#34;

    因为你不必费心记住&#34; list&#34;所有其他宏名称

  • &#34;维护&#34;

    因为无论您在进一步的编码开发中添加或删除多少个按钮,您都不必更改此子

答案 2 :(得分:0)

从“主按钮”调用所有子执行。您可以使用CALL语句调用另一个子。

示例:

Sub MasterButton()
   Call Button1
   Call Button2
End Sub

答案 3 :(得分:0)

您还可以通过将其值更改为“True”来“点击”按钮:

Sub clicking()

yourButtonName1.Value = True ' <- click
yourButtonName2.Value = True ' <- click
yourButtonName3.Value = True ' <- click

End Sub