• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:worksheetchangeイベント)

worksheetchangeイベントでA1セルの値を変更するとB1、C1、D1への入力がうまくいかない

このQ&Aのポイント
  • worksheetchangeイベントを使用してA1セルの値が変更されるとB1、C1、D1に入力が行われるようにコードを書きたいが、うまくいかない。
  • A1からD1まで連動したリストをリアルタイムで更新するコードを書きたい。
  • ElseIf Intersect(Target, Range('A1')).Value = '139.8' Thenの部分をRange('A1').Value = '139.8' Thenに変更するとB1、C1、D1への入力がうまくいかない。

質問者が選んだベストアンサー

  • ベストアンサー
  • myRange
  • ベストアンサー率71% (339/472)
回答No.1

質問のコードは、IFステートメントが拙いです。 値を当てはめながらコードの流れを追っていけば分かるかと。。 '------------------------------------------ Private Sub Worksheet_Change(ByVal Target As Range)  Dim myRng As Range  Set myRng = Intersect(Target, Range("A1:D2,A4:D6"))  If myRng Is Nothing Then Exit Sub  Application.EnableEvents = False  '●●  If WorksheetFunction.CountA(myRng) = 0 Then    myRng.Value = "-"  End If  If Not Intersect(Target, Range("A1")) Is Nothing Then    If Target.Value = "139.8" Then      Range("B1:D1").Value = "-"    End If  End If  Application.EnableEvents = True  '●● End Sub '------------------------------------------- 今回のようなChangeイベントでは ●のEnableEventsプロパティは必須になります。  

noname#185061
質問者

お礼

お礼遅くなってすみませんでした。 基礎から勉強してなんとか動作するようになりました。 ありがとうございました!!