我有一个转换为自选图形类型的chekcbox 如果您运行以下代码,您将获得类型1: 打印ActiveSheet.Shapes(“复选框5”)。键入 1
有没有办法看看它是否被检查过?
我尝试了以下代码,但它们不起作用:
ActiveSheet.Shapes("Check Box 5").OLEFormat.Object.Value = 1
ActiveSheet.Shapes("Check Box " & i).ControlFormat.Value = False
答案 0 :(得分:0)
您可以创建一个检查编号的CheckBox的函数:
Function GetCheckBoxValue(i As Integer) As Boolean
GetCheckBoxValue = (ActiveSheet.Shapes("Check Box " & i).OLEFormat.Object.Value = 1)
End Function
然后,您可以使用它来测试IF
语句中的值,例如:
Sub test()
If GetCheckBoxValue(5) Then
MsgBox "It's ticked"
Else
MsgBox "It's not ticked"
End If
End Sub
或者您可以通过以下方式运行它们并进行测试:
Sub test2()
Dim x As Integer
For x = 1 To 5
If GetCheckBoxValue(x) Then
MsgBox "Check Box " & x & " is ticked"
Else
MsgBox "Check Box " & x & " is not ticked"
End If
Next
End Sub