Vba 将文本指定给复选框

Vba 将文本指定给复选框,vba,excel,Vba,Excel,我想为我通过VBA添加的复选框指定一个文本 这是一个密码 ActiveSheet.OLEObjects.Add "Forms.CheckBox.1", Left:=Range("J6").Left, Top:=Range("J6").Top, Width:=Range("J6").Width, Height:=Range("J6").Height 如果第一个复选框添加到工作表中,如何使用VBA更改复选框的文本,然后: ActiveSheet.OLEObjects("CheckBox1").Ob

我想为我通过VBA添加的复选框指定一个文本 这是一个密码

ActiveSheet.OLEObjects.Add "Forms.CheckBox.1", Left:=Range("J6").Left, Top:=Range("J6").Top, Width:=Range("J6").Width, Height:=Range("J6").Height

如果第一个复选框添加到工作表中,如何使用VBA更改复选框的文本,然后:

ActiveSheet.OLEObjects("CheckBox1").Object.Caption = "Hello World!"
否则,您可以更改名称:

ActiveSheet.OLEObjects("CheckBox1").Name = "cMain"
然后像这样引用它:

ActiveSheet.OLEObjects("cMain").Object.Caption = "Hello there!"
OLEObjects的.Add方法返回已添加的对象,因此如果需要处理其属性,只需获取对该对象的引用即可。在本例中,您正在查找Caption属性:

Dim check_box As OLEObject

Set check_box = ActiveSheet.OLEObjects.Add("Forms.CheckBox.1", _
                Left:=Range("J6").Left, Top:=Range("J6").Top, _
                Width:=Range("J6").Width, Height:=Range("J6").Height)
check_box.Object.Caption = "Yes"