Excel VBA質問箱 IV

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

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


18200 / 76738 ←次へ | 前へ→

【63981】チェンジイベントについて
質問  たつ  - 10/1/7(木) 14:15 -

引用なし
パスワード
   どうしても分からなくて投稿します

チェンジイベントを使用しています。
K列(k列内ならどこでもOK)に日付を入力すると、隣のセル(L列)にマクロによって設定された値が表示されるようになっているファイルがありますが…

同じ日付が続く場合、コピーして日付を入力しようと、
K列に同時に複数の値を入れると、一つのセルしか隣のセルに値が表示されません
これを回避するにはどうしたらよいのでしょうか?

どうか、アドバイスお願いします

Private Sub Worksheet_Change(ByVal Target As Range)

Dim LastR As Integer, MDayR As Long
Dim 指定Day As Long, 基準Day As Long
Dim MyRange As Range, MyRange2 As Range
Dim MyItem As Date, 基準Item As Date

LastR = Sheets("設定").Range("A" & Rows.Count).End(xlUp).Row
If Target.Row = 1 Or Target.Row > LastR Then Exit Sub
If Target.Column <> 11 Then Exit Sub

Application.EnableEvents = False


MyItem = Range("K" & Target.Row).Value
基準Item = Range("G" & Target.Row).Value

With Sheets("MDay")
MDayR = .Range("A" & Rows.Count).End(xlUp).Row
Set MyRange = .Range("A2:A" & MDayR).Find(what:=MyItem, lookat:=xlWhole)
  If Not MyRange Is Nothing Then
   指定Day = MyRange.Offset(0, 1).Value
   Set MyRange2 = .Range("A2:A" & MDayR).Find(what:=基準Item, lookat:=xlWhole)
     If Not MyRange2 Is Nothing Then
      基準Day = MyRange2.Offset(0, 1).Value
      Range("L" & Target.Row).Value = 指定Day - 基準Day - 10
     End If
     Else
      Range("L" & Target.Row).Value = ""
     End If
End With

Application.EnableEvents = True

End Sub

0 hits

【63981】チェンジイベントについて たつ 10/1/7(木) 14:15 質問
【63982】Re:チェンジイベントについて kanabun 10/1/7(木) 14:45 発言
【63983】Re:チェンジイベントについて kanabun 10/1/7(木) 14:59 発言
【63984】Re:チェンジイベントについて たつ 10/1/7(木) 16:46 お礼
【63986】Re:チェンジイベントについて たつ 10/1/8(金) 10:37 質問
【63987】Re:チェンジイベントについて kanabun 10/1/8(金) 11:11 発言
【63988】Re:チェンジイベントについて kanabun 10/1/8(金) 11:43 発言
【63989】Re:チェンジイベントについて たつ 10/1/8(金) 12:50 お礼

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