はじめに
Excel VBAには、様々なイベントがあります。
その中でも、BeforeDoubleClickイベントは非常に便利で、ダブルクリックされた時に処理を実行することができます。
この記事では、BeforeDoubleClickイベントの概要と使用方法について解説します。
BeforeDoubleClickイベントとは
BeforeDoubleClickイベントは、シート上でセルがダブルクリックされたときに発生します。
このイベントを使うことで、ユーザーが特定のセルをダブルクリックした際に自動的に処理を実行することができます。
例えば、ダブルクリックされたセルの値をコピーする、ダブルクリックされたセルに関連する情報を表示するなどの処理を行うことができます。
使用方法
BeforeDoubleClickイベントを使用するには、以下の手順を実行します。
- ワークシートを開き、Visual Basic Editorを起動します。
- ワークシート上で、ダブルクリックイベントを処理したいセルを選択します。
- 「Sheet1」(ワークシート名によって異なります)をダブルクリックし、コードウィンドウを開きます。
- コードウィンドウに、以下のコードを追加します。
1 2 3 |
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) '実行したい処理をここに記述する End Sub |
- 実行したい処理をSubルーチン内に記述します。
例えば、次のコードでは、ダブルクリックされたセルに対応する行を選択します。
1 2 3 |
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Target.EntireRow.Select End Sub |
このコードを追加することで、ユーザーがワークシート上の任意のセルをダブルクリックした際に、そのセルに対応する行が自動的に選択されます。
まとめ
BeforeDoubleClickイベントは、シート上のセルがダブルクリックされた時に発生するイベントです。このイベントを使うことで、ユーザーがセルをダブルクリックした際に、自動的に処理を実行することができます。使用方法も比較的簡単で、コードを追加するだけで処理を実装できます。
ビジネス向けExcelマクロ開発で頻出するイベントの一つなので、覚えておくと便利です。
サンプルコード
ダブルクリックされたセルに値を入力する
1 2 3 4 5 6 7 8 9 |
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Dim input As String input = InputBox("値を入力してください:", "ダブルクリックされたセルに値を入力") If input <> "" Then Target.Value = input Cancel = True 'ダブルクリックによるセルの編集をキャンセル End If End Sub |
このコードでは、ユーザーがワークシート上で任意のセルをダブルクリックした場合、InputBoxが表示され、入力された値がダブルクリックされたセルに自動的に入力されます。
また、Cancel変数をTrueに設定することで、ダブルクリックによるセルの編集をキャンセルしています。
コメント