【ExcelVBA】ダブルクリックでセルに処理を行う

◎ダブルクリックでセルに処理を行う

 

セルをダブルクリックするだけで、チェックを入れられたりチェックを消したりできます。

この処理を行うのは、Private Subで行います。
通常モジュール内に記述するのではなく、シート単位でのイベント処理を行います。
※ワークブックを閉じる前に保存する、とかと同じで、オブジェクトレベルで行うものをイベント処理といいます。

書くときは、プロジェクトウインドウから処理を起こしたいシートに書いてくださいね。
例えば、Sheet1で処理したい場合は、VBAProjectの下のSheet1をダブルクリックして書き始めてください。

 

f:id:p_address:20200424100209j:plain



 

まるごとおサンプルを載せておきますので、ダブルクリックしたときにやりたいことは適宜カスタムして使ってみてください。



’---

 

'ダブルクリックでセルに処理を行う
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

Dim rng As String


'(例)セルA1からA10の範囲内に適用
'空白の場合、ダブルクリックでセルに●を入れる
'●がついている場合、ダブルクリックでセルを空白にする

rng = "A1:A10"
If Not Application.Intersect(Target, Range(rng)) Is Nothing Then
  If Target.Value = "" Then
    Target.Value = "●"
    Else
    Target.ClearContents
  End If
End If

End Sub

 

’---

 

 

チェックをしてもらいたいけど、いちいち「まる」とか打ち込むのめんどくさいなー、というときとか、1を立ててもらいたいけど全角半角問題あるよなー、とかいうときにも便利です。

 

 

 

 

 

ではまた。