基本的に私は、約5つのステータス(ブリーフィング、広告、ショートリスト、セレクション、オファー)があり、空席ごとに上記のステータスのリストとしてステータスセルがあり、変更されている空席の状況に基づいて手動で入力します。Excelで選択されたリストアイテムに対応する特定のセルに日付を反映させるにはどうすればよいですか?
ステータスが変更された日付を特定のセルに反映させるためのVBAコード(以下に添付)が見つかりました。別のステータス(基本的にステータスの更新)を選択すると、以前の入力が上書きされますする必要があります少し複雑です。
ステータスごとに列を作成しました。リストから選択した各ステータスのセルの日付を反映するためにこのコードが必要です。たとえば、特定の空き状況についてのブリーフィングを選択すると、 「ブリーフィング」欄の該当するセルを選択し、その特定空室のステータスを「選択」に変更すると、「選択」欄の対応するセルに日付が反映されます。データ入力に応じて、オフセット
Private Sub Worksheet_Change(ByVal Target As Range)
'Update 20140722
Dim WorkRng As Range
Dim Rng As Range
Dim xOffsetColumn As Integer
Set WorkRng = Intersect(Application.ActiveSheet.Range("N:N"), Target)
xOffsetColumn = 1
If Not WorkRng Is Nothing Then
Application.EnableEvents = False
For Each Rng In WorkRng
If Not VBA.IsEmpty(Rng.Value) Then
Rng.Offset(0, xOffsetColumn).Value = Now
Rng.Offset(0, xOffsetColumn).NumberFormat = "dd-mm-yyyy"
Else
Rng.Offset(0, xOffsetColumn).ClearContents
End If
Next
Application.EnableEvents = True
End If
End Sub