我想从 VBA 项目中获取例程列表,然后运行用户选择的宏。
下图显示了本机“宏”框。我想将此功能扩展到跨多个文档的多个宏。
我发现这个链接解决了问题的第一部分。现在我有了列表,如何按名称运行选定的例程?
我想从 VBA 项目中获取例程列表,然后运行用户选择的宏。
下图显示了本机“宏”框。我想将此功能扩展到跨多个文档的多个宏。
我发现这个链接解决了问题的第一部分。现在我有了列表,如何按名称运行选定的例程?
您好,欢迎来到 SO
下面是代码示例如何使用代码执行 VBA 宏。您需要添加一些表单来选择要执行的文档和宏。这取决于您的实施。
Sub RunMacroUsingCode()
Dim vbaProjectName As String
vbaProjectName = "InventorVBA"
Dim vbaModuleName As String
vbaModuleName = "m_Tests"
Dim vbaMacroName As String
vbaMacroName = "RunMultipleMacrosTestCall"
Dim vbaProject As InventorVBAProject
For Each vbaProject In ThisApplication.VBAProjects
If vbaProject.name = vbaProjectName Then Exit For
Next
Dim vbaModule As InventorVBAComponent
For Each vbaModule In vbaProject.InventorVBAComponents
If vbaModule.name = vbaModuleName Then Exit For
Next
'Using result is optional
Dim result As Variant
Call vbaModule.InventorVBAMembers(vbaMacroName).Execute(result)
End Sub
Function RunMultipleMacrosTestCall()
Call MsgBox("TEST")
RunMultipleMacrosTestCall = True
End Function