【エクセルマクロ】チェックボックスのセル番地を取得する 3選

VBA-チェックボックスセル番地取得-アイキャッチ ExcelVBA

エクセルマクロで、チェックボックスのセル番地を取得するVBAコードをご紹介します。

このページのマクロコードは、コピペで使えます。
ぜひ、お試しください。

チェックボックスのセル番地を取得

以下のマクロを実行すると、チェックボックスがあるセルを取得します。


Sub チェックボックスのセル番地取得()
  
Dim cb As checkbox
Dim Buf As String
  
    'チェックボックスをループ
    For Each cb In ActiveSheet.CheckBoxes
              
            'セル番地を格納
            Buf = Buf + cb.TopLeftCell.Address & vbCrLf

    Next cb
    
    MsgBox Buf
  
End Sub

 

マクロ実行後

チェックボックスが存在しているセルを、

メッセージボックスに表示します。


 

補足

チェックボックスのオブジェクトの左上部分が「どのセルに存在しているか?」で

取得するセル番地が決まります。


 

チェックボックスのセル番地を取得(オンのセル番地取得)

以下のマクロを実行すると、チェックボックスがあるセルを取得します。


Sub チェックボックスのセル位置格納()
  
Dim cb As checkbox
Dim Buf As String
  
    'チェックボックスをループ
    For Each cb In ActiveSheet.CheckBoxes
    
         If cb.Value = xlOn Then
              
            'セル番地を取得
            Buf = Buf + cb.TopLeftCell.Address & vbCrLf

        End If

    Next cb
    
    MsgBox Buf
  
End Sub

 

マクロ実行後

チェックボックスがオンになっているセルの位置を、

メッセージボックスに表示します。


 

チェックボックスのセル番地を取得(クリックしたセル番地取得)

以下のマクロを実行すると、チェックボックスのセル番地を取得します。


Sub クリックしたチェックボックスのセル番地()

Dim a As String

    'クリックしたチェックボックスのセル番地取得
    a = ActiveSheet.CheckBoxes(Application.Caller).TopLeftCell.Address
    
    MsgBox a

End Sub

 

マクロ実行後

クリックしたチェックボックスの番地を、

メッセージボックスに表示します。


 

補足

セル番地を表示したいチェックボックス1つ1つに、

マクロを登録する必要があります。


 


 

クリックしたチェックボックスのオブジェクトの左上端が、

収まっているセル番地を取得しています。

 
この記事がお役に立ちますと幸いです。
 
・【エクセルマクロ】チェックボックス処理を自動化まとめ
 

【エクセルマクロ】チェックボックスを自動操作:使用例16選
エクセルマクロで、チェックボックスを自動で操作するVBAコードをご紹介します。どのマクロコードも、コピペで使用できます。ぜひお試しください!

 

ド素人でも100倍速! ChatGPT×Excel 時短技大全

「やりたいこと」を書くだけでExcel作業もマクロも自動化できる一冊

Excel業務をChatGPTに丸投げしてラクにしたいなら、まず読んでおきたい一冊です!


★★★★☆ 4.0 ※ Amazonカスタマーレビューより
ExcelVBAを使ったAIへの質問・依頼のコツがよくわかる
マクロをAIに自動生成させる発想が新しく、実務でそのまま使える事例が多い
住所分割・重複チェックなど、すぐ使える実用マクロ事例が豊富