我请求您提供以下帮助:
我需要按快捷键来运行现有的宏。
要定义的快捷键是:Shift + Control +(从1到1的数字) 30)。
B列包含以下范围内的1到30之间的数字, B14 = 1,B15 = 2 ...... B43 = 30.
列E包含宏的名称,例如 E14 = MacroA,E15 = MacroB .... E43 = MacroAD。
因此,按下Shift + Control + 10,MacroJ应该 跑。
我已经完成了以下代码,但没有运气:
Sub test()
Dim n As Integer
For n = 1 To 30
Dim macroname As String
macroname = Application.VLOOKUP(n, Range("B14:E43"), 4, false).Value
Application.OnKey "+^n","macroname"
End Sub
答案 0 :(得分:0)
你非常接近!如果你有一个宏,那么代码将“几乎”起作用:
Sub macroname()
MsgBox "Hello world"
End Sub
您需要一种语法:
Dim s1 As String
s1 = "+^" & CStr(n)
Application.OnKey s1, macroname
我不知道 n 是否可以超过 9