请使用以下代码提供帮助:
1)目标:运行范围内引用的宏。
2)范围(" B1:B101")包含要运行的宏列表。例如,单元格B1包含引用具有相同名称的宏的单词Macro1,B2指的是Macro2,依此类推。
3)Macro1,Macro2 ...已经创建。
4)我已经使用以下代码,但还没有运气:
Dim mCell As Range
Dim mRange As Range
Dim mMacro As String
mMacro = mCell.Value
Set mRange = Sheets("Sheet1").Range("B1:B101")
For Each mCell In mRange.Cells
Application.Run Module2.mMacro
Next mCell
答案 0 :(得分:1)
Application.Run
方法以String
为参数,尝试将名称作为字符串传递:
Application.Run "Module2." & mCell.Value
答案 1 :(得分:0)
在代码中进行一些修改,检查这是否是您想要的:
Sub try()
Dim mCell As Range
Dim mRange As Range
Dim mMacro As String
Set mRange = Sheets("Sheet1").Range("B1:B101")
For Each mCell In mRange.Cells
mMacro = mCell.Value
Application.Run "Module2." & mMacro
Next mCell
End Sub