使用stringvariables在VBA中设置对象variables? (Excel 2013)
我有一个页面上的一些ActiveX控件/button,我想修改button的几个参数(在循环function)。
我很好,编写循环function来实现这一点,但无法find一种方法来引用使用stringvariables的对象。 我已经build立了一个对象variables(如下所示)和一个stringvariables来改变对象variables的引用 – 但是找不到一个方法让它工作。
这是不起作用的代码:
Private Sub TrialCode_Click() Dim ButtonObj As Object Dim ButtonCaption As String Dim ButtonString As String ButtonString = "CommandButton1" Set ButtonObj = ButtonString ButtonCaption = "Something" ButtonObj.Caption = ButtonCaption 'example of the kind of parameters I want to change End Sub
Set ButtonObj = ButtonString
是失败的命令,报告types不匹配错误。
我在Excel 2013中工作。
我真的希望有办法做到这一点。 任何帮助将非常感谢!
CommandButton属于一个OLEObject
尝试
ButtonString = "CommandButton1" Set ButtonObj = ActiveSheet.OLEObjects(ButtonString) ButtonCaption = "Something" ButtonObj.Object.Caption = ButtonCaption 'example of the kind of parameters I want to change
请注意,一些属性直接发生在ButtonObj
下,其他的如Caption坐在Object下面