1つのシートモジュールに複数の Change イベントプロシージャをば
1つのシートモジュールに書ける Change イベントプロシージャは1つ…
とは限りません。
実は、いくつでも書けます。
やり方は単純で、Sheet1 モジュールに
Public WithEvents sht1 As Worksheet Private Sub Worksheet_Change(ByVal Target As Range) MsgBox "元祖" & vbCrLf & Target.Address End Sub Private Sub sht1_Change(ByVal Target As Range) MsgBox "2号" & vbCrLf & Target.Address End Sub
Thisworkbook モジュールに
Private Sub Workbook_Open() Set Sheet1.sht1 = Sheet1 End Sub
と書いておくだけです。
実用性はまったくありません。
こんなことするくらいなら、普通にプロシージャを分けて、Call で呼び出すようにした方がいいです。
余談ですが、'元祖'よりも'2号'の方が先に実行されるようです。
# Excel2007 で試しています。
※.Excel World の 2008年3月16日 22:40 の日記をコピーしています。
http://excel.sns.fc2.com/excel/