|
>範囲指定が多いので、Range()内が長くなってしまいますが、どうしたら...
基本的には、折り返して記述すれば良いと思います。
あとはTargetが複数範囲だった時の対応を入れないといけませんね。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range
Dim r As Range
Set rng = Intersect(Target, Rows("5:3000"), _
Range("Z:Z,AB:AB,AD:AD,AH:AH,AJ:AJ,AL:AL"))
If Not rng Is Nothing Then
Application.EnableEvents = False
For Each r In rng
If r.Value <> "" Then
r.Offset(, 1).Value = "-"
Else
'r.Offset(, 1).Value = ""
r.Offset(, 1).ClearContents 'で可?
End If
Next
Application.EnableEvents = True
Set rng = Nothing
End If
End Sub
|
|