如何创建一个宏并相应地运行多个宏?

时间:2018-11-13 15:09:06

标签: excel vba excel-vba excel-2010 record

我有一本excel工作簿,在五张不同的纸上有五个不同的录制宏。是否可以创建另一个宏并相应地运行这五个宏?

困难在于未为每个工作表指定那些宏。我每次必须手动运行这些宏。

任何想法都值得赞赏!谢谢。

1 个答案:

答案 0 :(得分:3)

this question中所述:VBA中的多线程无法本地完成。

  

不能通过VBA本地完成。 VBA内置在单线程单元中。获取多个线程的唯一方法是在具有COM接口的VBA以外的其他版本中构建DLL,然后从VBA调用它。

因此,同时运行所有5个宏将需要大量的工作。

但是OP在评论中提到,可以顺序运行所有5个宏。

您可以做的是:

  1. 添加新模块

Add a new module

  1. 在此模块中添加新的公共子

add a new sub

  1. 引用此子目录中的所有宏名称

此宏的外观示例:

Public Sub allMacros()
    macroName1
    macroName2
    macroName3
    Sheet1.macroNameNotUnique
    Sheet2.macroNameNotUnique
End Sub

现在运行此宏将按顺序运行所有指定的宏。