†ワークブックのイベントの処理(プロシージャ)はそのワークブックの中に記述します。以下はワークシートの主なイベントです。シートがアクティブになった時。シートが非アクティブになった時。選択範囲が変わった時。セルがダブルクリックされた時。セルが右クリックされた時。シートが再計算された時。ハイパーリンクがクリックされた時。ピボットテーブルが更新された時。次のサンプルは例えばデータ設定用のシートで、そのD列の4行目からKeyWordというNameが設定されていて、その列にデータ行が追加・削除された場合、データ設定用シートが非アクティブになった時(他のシートが選択された場合など)に名前の範囲を再計算して設定します。このプロシージャは該当のワークシートに記述します。行列番号を表示したり非表示するにはDisplayHeadingsプロパティをTrue←→Falseに変更します。次のサンプルは現在ActiveになっているWorksheetの行と列の番号を表示←→非表示に切替えます。このプロシージャは標準モジュールに記述します。変更されたセルに対して処理を行う場合、Changeイベントにより処理を実行しますが、2つの問題があります。一つ目は一度に複数セルが変更される場合があるということ、2つ目は処理により内容を変更するとそのことによりChangeイベントが発生してループが発生することです。Target(=Range)からChangeイベントの情報を取得します。2)は変更されたセルの右下のセルを与えます。(変更された範囲外のセルにもアクセスできます。)Application.EnableEventsセルを変更する前にイベントの発生を止め、処理後にイベントの発生を再開します。イベントを発生させる次のサンプルは上記の点を考慮した例です。このプロシージャは該当のワークシートに記述します。ここでは変更された範囲に3列目(=TgtClm)が含まれていた場合そのアルファベットの小文字を大文字に変更します(To_Upper)。Targetからの相対座標と、シート(me)上の絶対座標を使った2通りの例を記述しました。