日付と同じ関連する行の値が変更された場合は、最初の列(A)の日付を更新したいと考えています。VBA、複数の選択で同じマクロを実行
以下のコードを使用して、一度に1つのセルに対して実行できます。ただし、複数のセルが選択されている場合、マクロは実行を停止します。複数のセルでも動作するように、コードの下でアップグレードする手助けはできますか?
私はあらかじめ定義されたターゲットと範囲に必要なコードを見つけましたが、コード内でターゲットまたは選択範囲を定義しないと機能します。
Dim oldValue As Variant
'Get the old selected cell value
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
oldValue = Target.Value
End Sub
'Update the date in first column when new value on selected cell
Private Sub Worksheet_Change(ByVal Target As Range)
If (Target.Count = 1) And Not (Target.Column = 1) And Not (Target.Value = oldValue) Then
Cells(Target.Row, 1) = Date
Else
End If
End Sub
編集(コメント):
私は、複数のセルが変更された場合、関連する日付を更新できるようにしたいです。たとえば、文字「x」を範囲C6,C8:C9
にコピーすると、A6
,A8
およびA9
の日付が変更されます。しかし、文字「a」を同じセルにコピーするときは、A6
とA9
のみ変更する必要があります。これは、変更する前にC8
が既に「a」だったためです。
ループを使用します。 Simples。 –
日付はどのように更新されますか?プラス一日ですか?マイナス10日? – JohnyL
最終変更日時まで – SOKRATES