dポイントプレゼントキャンペーン実施中!

VBAでCheckBoxeを3個作りsub checkをコールできる用にしました。
このsub checkのなかで今どのCheckBoxeがクリックされたか調べたいのですがどうすればいいでしょうか、

Sub main()
With ActiveSheet.CheckBoxes.Add(10, 10, 20, 20)
.Name = "CheckBox " & .Index
.Caption = ""
.OnAction = "check"
End With

With ActiveSheet.CheckBoxes.Add(10, 50, 20, 20)
.Name = "CheckBox " & .Index
.Caption = ""
.OnAction = "check"
End With

With ActiveSheet.CheckBoxes.Add(10, 100, 20, 20)
.Name = "CheckBox " & .Index
.Caption = ""
.OnAction = "check"
End With

End Sub

Sub check()

'// クリックされたcheckboxの番号が知りたい//

End Sub

A 回答 (3件)

>番号が知りたい//


こちらの方がスマートですね
MsgBox ActiveSheet.CheckBoxes(Application.Caller).Index
    • good
    • 0
この回答へのお礼

ありがつございました。

お礼日時:2010/02/19 13:26

>番号が知りたい//


MsgBox Split(ActiveSheet.Shapes(Application.Caller).Name, " ")(1)
    • good
    • 0

''// クリックされたcheckboxの番号が知りたい//



Sub check()
    MsgBox ActiveSheet.Shapes(Application.Caller).Name
End Sub
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!