我正在尝试使用Application.Run
或CallByName
构建基于此问题Trying to call a Sub with a String - VBA的答案调用带字符串的Sub的代码,但我得到了:
运行时错误'1004': 应用程序定义或对象定义的错误
当我尝试Application.Run
时和
运行时错误'438': Object不支持此属性或方法
当我尝试CallByName时。
调用也称为Subs的是同一张Sheets("Rozpad_hodnocení")
。
我正在尝试浏览该工作表上名称中包含索引编号的所有选项按钮,以查找名称中带有“ne”的Obuttons。有了这个找到的索引,我想调用一个索引号相同的子名称和名字中的“ne”。 被称为潜艇就像这样:
OB9Ne_Click()
OB10Ne_Click()
OB11Ne_Click()
我无法将代码移动到表单或模块
以下是代码示例:
Sub adsf()
Dim s As Shape
Dim Pro As String
For Each s In Sheets("Rozpad_hodnocení").Shapes
If s.Type = 12 And s.Name Like "*Ne" Then
Pro = s.Name + "_Click()"
Application.Run Pro
'CallByName List3, Pro, VbMethod
'CallByName Sheets("Rozpad_hodnocení"), Pro, VbMethod
End If
Next
End Sub
也许答案已经在上一个问题中已经存在,但我没有设法调整我的代码。
答案 0 :(得分:0)
感谢@Kyle我将Subs更改为Public,@ Macro Man建议从Pro
删除括号,并结合使用这些括号。