【エクセルマクロ】チェックボックスのセル番地を取得する 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選
...

 

「たった1秒で仕事が片づくExcel自動化の教科書【増強完全版】」
「5時間かかる作業が3時間でできます」ではなく「1秒で終わらせます」へ
毎日の業務を瞬時に終わらせるしくみを解説