[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『Worksheet_Changeイベントで行削除されたかわかりますか?』(タイニー)
Worksheet_Changeイベントで、 D列からG列までは、変更して欲しくない列なので、
If Application.Intersect(Target, Range("D:G") Is Nothing) = False Then
MsgBox "変更出来ません。"
Application.EnableEvents = False
Application.Undo
Application.EnableEvents = True
End If
上記のようにマクロを書いたら、行削除もできなくなってしまいました。 D:Gからは入力させたくないが、行削除はいいという場合は、 どのようにしたらよいですか?
例えば 初期設定として A65536のセルを名前定義して「最後とする」 A1セルに =ROW(最後)
シートモジュール
Private Sub Worksheet_Calculate()
If IsError(Range("A1").Value) Then
MsgBox "多分挿入"
ElseIf Range("A1").Value <> 65536 Then
MsgBox "多分削除"
End If
End Sub
セルが削除された時挿入された時は都度初期設定をやり直す。 後は見合った方法で処理してください。 (Jaka)
(Jaka)さんできました。こんな方法があったのですね。 ありがとうございました。(タイニー)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.