Как мне поставить метку времени в MS Excel для разных записей в каждом соответствующем столбце? - PullRequest
0 голосов
/ 19 сентября 2019

У меня есть таблица с пятью столбцами (названные движения A, B, C и т. Д.).Я хочу, чтобы каждая ячейка платежей была заблокирована при добавлении значения / суммы, чтобы ее нельзя было удалить (эта часть работает нормально)

Но я также хочу отслеживать (отметку времени) время, когда любой изячейки в разных столбцах (например, от 6 до 10) редактируются или вводятся.Например, если ввод в ячейку F3, текущая дата и время должны быть помечены меткой времени в ячейке Q3.Тот же процесс, если любая ячейка в столбцах G, H, I или J редактируется, соответствующие ячейки в столбцах R, S, T и U должны иметь метку времени.

Я начинающий пользователь vba и проверил в Интернете различные подходы, которые, похоже, не совсем соответствуют этой задаче.

Private Sub Worksheet_Change(ByVal Target As Range)

Dim xCellColumn As Integer
Dim xTimeColumn As Integer
Dim xRow As Long
Dim xCol As Integer
Dim xDPRg, xRg As Range
Dim cl As Range

    xRow = Target.Row
    xCol = Target.Column
ActiveSheet.Unprotect Password:="123"
For Each cl In Target
If cl.Value <> "" Then
       If MsgBox("Is this entry correct? This cell cannot be edited after entering a value.", vbYesNo, "Cell Lock Notification") = vbYes Then
         cl.Offset(0, 11).Value = Now()
          ActiveSheet.Protect Password:="123"
          cl.Locked = True
        Else
                cl.Value = ""
             ActiveSheet.Unprotect Password:="123"
            End If
         End If
Next cl

End Sub



i want each change to timestamp in their respective allocated row in the right column. that is if you edit any cell on G, it will stamps its respective row on column R; same for - H stamps S; I stamps T; J stamps U)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...