单击另一个命令button在其他工作表中单击CommandButton

我有不同的表单中有几个命令button。 现在我希望用户能够一次运行,如果想要的话。 因此,我想使用一个新的CommandButton来运行所有工作表中的所有CommandButtons。 然而,我总是得到一个错误信息..我必须接近,并没有为我工作:

运行子目录:

Private Sub CommandButtonX_Click() run CommandButtonY_Click run CommandButtonZ_Click etc. end sub 

..什么都没发生

我的另一种方法是select所有的工作表和“激活commmandbutton”,这总是被称为CommandButton1_Click但是我仍然不知道该怎么做

这是我的方法:

 Sheets(Array("AA", "BB", "CC",etc.).Select Sheets("AA").ActivateCall Call CommandButton1_Click End Sub 

我是新来的,所以我真的会赞赏你的帮助!

谢谢!

这纯粹是一个devise意见,但我会尝试以不同的方式解决这个问题。

我的首选将是我的子程序在一个单独的模块,只需从一个button调用它们。 也就是说,_Click事件看起来像这样:

 Private Sub Command1_Click() Call DoSomeStuff End Sub 

而在一个单独的模块中,我所有的潜艇都被相应的分组:

 Sub DoSomeStuff() Sheet1.Range("A1").Value = "Hooray for VBA" End Sub 

使用这种方法,你可以避免使用VBA(有时候我认为)事件处理程序,如果它们被几个不同的button调用,你可以重新使用具有适当参数的subs。

那么你的“主button”只是调用所有的潜艇:

 Private Sub Command1_Click() Call DoSomeStuff Call DoSomeMoreStuff Call DoTheFinalStuff End Sub 

你得到什么错误信息?

你正在运行什么版本的Excel?

此代码在Windows 7上的Excel 2007中正常运行:

 Sub Button1_Click() MsgBox ("Hey there, I'm button 1") End Sub Sub Button2_Click() MsgBox ("Hey there, I'm button 2") End Sub Sub Button3_Click() MsgBox ("Hey there, I'm button 3") End Sub Sub Button4_Click() Button1_Click Button2_Click Button3_Click End Sub 

我有3个button,每个都在不同的工作表上,并且都显示一个标识它们的消息。 第四个button也在一个单独的工作表上,并按照预期显示其他3个消息。

你可以附加错误信息到您的文章?