|
分類:[Microsoft Office 全般]
VIZUAL BASICについてどなたかご教授をお願いします。
EXCELでたくさん行がある表で1列目にセルの編集があった場合に3行目にその編集日を表示させたい。
また編集した行であっても後から1列目のセルをクリアした場合は編集日を空白を表示したい。
理想は入力とクリアを繰り返しても入力時には編集日をクリア時には空白を表示させたい。
そこで下記のVBAを作ったのですが
入力時には編集日を表示→そのセルをクリアした場合は空白を表示→またそのセルに入力した時に編集日が表示してくれません。
Private Sub worksheet_change(ByVal target As Range)
Dim gyo As Long
Dim ret As Long
Dim nex As Long
gyo = target.Row
If (gyo <= 5) Then Exit Sub
ret = target.Column
If (ret <> 1) Then Exit Sub
nex = gyo
Application.EnableEvents = False
Do Until Cells(nex, 1) = ""
Cells(nex, 3).Value = Date
nex = nex + 1
Loop
nex = gyo
Do While Cells(nex, 1) = ""
Cells(nex, 3).Value = ""
nex = nex + 1
If Cells(gyo + 1, 1) = "" Then Exit Sub
Loop
Application.EnableEvents = True
End Sub
お手数をお掛けしますが当方初心者にて宜しくお願いします。
|