構文
構文は以下の通りです。
Private Sub Worksheet_Change(ByVal Target As Range)
' ここにシートが変更された時に実行したい処理を書く
End Sub
' ここにシートが変更された時に実行したい処理を書く
End Sub
解説
Worksheet_Changeは、シートが変更された時に自動的に実行されるイベントです。Targetは、変更されたセル範囲を示す引数です。Targetには変更されたセルの情報が入ります。
プログラミング例
具体的なプログラミング例を紹介します。
Private Sub Worksheet_Change(ByVal 変更されたセル As Range)
If 変更されたセル.Address = "$A$1" Then
MsgBox "セルA1が変更されました"
End If
End Sub
If 変更されたセル.Address = "$A$1" Then
MsgBox "セルA1が変更されました"
End If
End Sub
上記のプログラムは、変更されたセルがA1であるかどうかを確認し、セルA1が変更された時にメッセージを表示します。
まとめ
Worksheet_Changeイベントは、シートが変更された時に自動的に処理を実行できる便利な方法です。特定のセルが変更された時にのみ処理を実行することも可能です。このようなイベントは、例えばデータ入力が完了した時に特定の計算を行ったり、データの確認を促すメッセージを表示したりするのに役立ちます。