Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


5834 / 13646 ツリー ←次へ | 前へ→

【48640】changeイベントについて 久保一美 07/4/27(金) 7:58 お礼[未読]
【48641】Re:changeイベントについて ichinose 07/4/27(金) 10:42 発言[未読]

【48640】changeイベントについて
お礼  久保一美  - 07/4/27(金) 7:58 -

引用なし
パスワード
   マクロを利用してシート1とシート2の3行目に行を挿入した時一時的にchangeイベントを無効にする方法を教えて下さい。

【48641】Re:changeイベントについて
発言  ichinose  - 07/4/27(金) 10:42 -

引用なし
パスワード
   ▼久保一美 さん:
こんにちは。

>マクロを利用してシート1とシート2の3行目に行を挿入した時一時的にchangeイベントを無効にする方法を教えて下さい。
きちんと検証はしていませんが・・・。
当該シートモジュールに

'=========================================================
Option Explicit
Const 挿入無効 = "$3:$3"
Private rng As Range
Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Address = 挿入無効 And Target.Address <> rng.Address Then
    MsgBox "無効にする"
    Call set_rng
    End If
End Sub
'=========================================================
Sub set_rng()
  Set rng = Range(挿入無効)
End Sub


但し、最初に一度 set_rngを実行した後に試してみてください。

これで良いようなら、set_rngをどのタイミングで実行させるかがポイントです。

もっともこういう変数の取り方は、ともすれば、変数が初期化されてしまう場合も
ありますが・・・。

5834 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free