Page 144 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 通常モードに戻る ┃ INDEX ┃ ≪前へ │ 次へ≫ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼セルの変更チェック ゼロ 02/9/27(金) 22:52 ┗Re:セルの変更チェック コロスケ 02/9/28(土) 4:33 ┗Re:セルの変更チェック ゼロ 02/9/28(土) 11:45 ┗Re:セルの変更チェック コロスケ 02/9/30(月) 10:59 ─────────────────────────────────────── ■題名 : セルの変更チェック ■名前 : ゼロ ■日付 : 02/9/27(金) 22:52 -------------------------------------------------------------------------
こんばんは。 セルの内容が変更されたら、あるセルをクリアしたいのですが、以下のロジックでコーディングしています。 Dim a, b As String Private Sub Worksheet_Change(ByVal Target As Excel.Range) Application.EnableEvents = False b = Target.Item(1) If Target(1).Row >= 14 And a <> b And _ (Range("L5").Value <> "" Or Range("L6").Value <> "" Or Range("L7").Value <> "") Then Range("L5").Value = "" Range("L6").Value = "" Range("L7").Value = "" End If Application.EnableEvents = True End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range) a = Target.Item(1) End Sub 通常のセルは正常に処理できるのですが、セルに入力規則で設定したトップダウンリストを使用するとWorksheet_Changeイベントが取得できないケースが有りました。 それは、値を”=$AR$50:$AR$103”のように参照している場合です。値を直接書き込む”A,B,C”の様な場合はイベントが取得できました。 これは、どのような事象なのでしょうか?また、どのように対策すればよろしいでしょうか。といいますか、ロジック自体こんなやり方でいいのか分かりません。 別のやり方でも構いませんので、宜しくお願いします。 エクセルは97を使用しています。 |
▼ゼロ さん: 97のチェンジイベントは入力規則では発生しなかったと思うので、SelectionChangeイベントを使って入力規則を都度設定してやれば動いたと記憶しています。 眠いので今日はここまでしか書けません。 |
▼コロスケ さん: >▼ゼロ さん: >97のチェンジイベントは入力規則では発生しなかったと思うので、SelectionChangeイベントを使って入力規則を都度設定してやれば動いたと記憶しています。 コロスケさん、こんにちは。 実際には、どのようにすればよろしいのでしょうか? 宜しくお願い致します。 |
▼ゼロ さん: シートのレイアウトがわからないので、マクロの記録で入力規則を設定してみてください。 出来上がったコードをSelectionChangeのなかに入れてみてください。 また結果を教えてください。 |