|
でれすけさん、回答ありがとうございました。
返信が送れまして申し訳ありません。
>>コードをご教授
>っていうのは、そのまま動くコードをここに書けということでしょうか。
すみません。
次のコードを書くのを忘れていました・・・
以下のようなコードを書いてみたのですが、
・入力するときは、コピペをする
・削除するときは、複数選択して削除する
に対応できませんでした。
以上の2つの動作を含むにはどのようにすればよろしいのでしょうか。
====================================================================================================
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim i As Integer
Dim j As Integer
j = 0
With Target
If .Cells.Count > 1 Then Exit Sub '変更されたセルは1個に限定
If .Column <= 10 Then Exit Sub '変更されたセルはK列以降に限定
For i = 1 To .Column
If Left(Cells(1, i), 7) = "四半期毎の結果" Then
j = j + 1
End If
Next
Select Case (.Column - 9 - j) Mod 6 '編集されたセルはK列から6列サイクルで3〜6列に限定します。
Case 3, 4, 5, 0
Case Else
Exit Sub
End Select
If .Offset(, 0 - (.Column - 10 - j) Mod 6).Value <> "" Then 'サイクルの1列目が空白への変更でない場合に限定
.Offset(, 1 - (.Column - 10 - j) Mod 6).Value = Format(Date, "yyyy/mm/dd") 'サイクルの2列目に当日日付を記入
Else
.Offset(, 1 - (.Column - 10 - j) Mod 6).Value = "" 'サイクルの1列目が空白になった場合、日付を消去
End If
End With
End Sub
====================================================================================================
|
|