質問: now end if next r end sub イベントは、シートの2列目のセルに変更があれば、1列目に日付時刻を記入するというものです。宜しくお願い致します。
回答: 失礼ですが、混迷を深めやすい形での質問の出し方になっています。 質問者さんは http://okweb.jp/kotaeru.php3?q=911402 http://okweb.jp/kotaeru.php3?q=911764 という形で関連質問を順次出されていますね?それぞれ別の問題と言うことではなく、同じ問題を順次解決していくという方針だと思うのですが、以前の質問のリンクを示されていないので、別々の問題として考えると、特に今回のような質問であれば、意図不明なものになってしまっています。 他のプロシージャから worksheet_changeを呼び出す必要性も正当性も感じられません。(private subなので同一モジュールからならworksheet_changeは呼び出せますが、標準モジュールから呼び出すことは出来ません。) worksheet_changeで指定した時刻表示をctrl+tを押したとき以降だけ有効にしたいということなら次のようにする方法が考えられます。 標準モジュールで public exflg as boolean 'subの定義の前 sub 実行準備sub() exflg = true end sub workbookのイベントで private sub workbook_open() 'auto-openでも可 msgbox "ctrl + t でイベント実行準備を行います。" exflg = false application.onkey "^{t}", "実行準備sub" end sub worksheetのイベントで private sub worksheet_change(byval target as range) dim r as range if exflg then for each r in target if r.column = 2 then r.offset(0, -1).value = now end if next r end if end sub