Option
Explicit
Public
Sub
CheckBox_OnAction()
If
TypeName(Application.Caller) <>
"String"
Then
Exit
Sub
Dim
obj
As
Object
On
Error
Resume
Next
Set
obj = ActiveSheet.Shapes(Application.Caller)
If
Err.Number <> 0
Then
Exit
Sub
On
Error
GoTo
0
If
obj.Type = MsoShapeType.msoFormControl
Then
If
obj.FormControlType = XlFormControl.xlCheckBox
Then
Set
obj = obj.OLEFormat.
Object
Else
MsgBox
"Das Makro ist nicht für diesen Steuerelementtyp vorgesehen!"
, vbExclamation
Exit
Sub
End
If
Else
MsgBox
"Das Makro ist nicht für diesen Steuerelementtyp vorgesehen!"
, vbExclamation
Exit
Sub
End
If
Select
Case
obj.Value
Case
xlOn: MsgBox
"gesetzt"
, vbInformation, obj.Name
Case
xlOff: MsgBox
"nicht gesetzt"
, vbInformation, obj.Name
Case
xlMixed: MsgBox
"teilmarkiert"
, vbInformation, obj.Name
End
Select
End
Sub