|
下記コードの範囲では通常の日付入力
たとえば"07/05/20"と入力した場合
現時点では"07/02/21"と表示されてしまうのですが
普通に手入力を実行した場合にその日付にすることは
可能でしょうか?よろしくお願いします。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim 各々のセル As Range
If Intersect(Target, Range("B20:B350")) Is Nothing Then
Exit Sub
End If
Application.EnableEvents = False
'For Each を使ってIntersect(Target, Range("B20:B350"))の範囲内にあるセルを
'1つ1つ処理する。
For Each 各々のセル In Intersect(Target, Range("B20:B350"))
If IsNumeric(各々のセル.Value2) And 各々のセル.Value2 <> "" Then
If Day(Date) >= 23 Then
各々のセル.Value = DateSerial(Year(Date), Month(Date) + 1, Day(各々のセル.Value2) + 1)
Else
各々のセル.Value = DateSerial(Year(Date), Month(Date), Day(各々のセル.Value2) + 1)
End If
End If
Next
Application.EnableEvents = True
End Sub
|
|