Оглавление
В этой статье показано, как в excel установить временную метку при изменении ячейки. Вам может понадобиться отслеживать ввод данных в ячейки определенного столбца. Например, вы зарезервировали столбец B для ввода данных. Теперь вам нужна временная метка в соседней ячейке в столбце C, когда обновляется ячейка в столбце B. Эта статья поможет вам сделать это двумя эффективными способами.
Скачать Практическое пособие
Вы можете скачать рабочую тетрадь по практике с помощью кнопки загрузки ниже.
Временная метка в Excel.xlsm2 способа вставить временную метку в Excel при изменении ячейки
1. использование функций ЕСЛИ, И, СЕЙЧАС и других для вставки временной метки в Excel
Выполните следующие действия, чтобы получить временную метку с помощью формул при изменении ячейки.
📌 Шаги
- Первая пресса ALT+F+T открыть Параметры Excel . Затем перейдите к Формулы вкладка. Далее проверьте Включить итеративный расчет флажок. Затем установите Максимальное количество итераций до 1. После этого нажмите OK.
- Теперь введите следующую формулу в ячейку C5 Затем перетащите Наполнительная рукоятка значок , чтобы скопировать формулу в ячейки ниже.
=IF(AND(B5"",D5B5),NOW(),IF(B5="","",C5))
- Затем введите следующую формулу в ячейку D5 Далее перетащите Наполнительная рукоятка значок в ячейки ниже, как и ранее.
=IF(B5="","",IF(OR(C5="",AND(ISNUMBER(D5),B5=D5)),D5,B5))
- Теперь начните вводить значения в ячейки в колонка B После этого вы получите следующий результат. Вот, столбец D это вспомогательный столбец. Вы можете скрыть его, щелкнув правой кнопкой мыши после выделения столбца.
- В качестве альтернативы вы можете просто ввести следующую формулу в ячейку C5 чтобы получить тот же результат.
=IF(B5"",IF(C5="",NOW(),C5),"")
- Вам может понадобиться изменить форматирование ячеек в колонка C Выберите столбец, нажав на номер столбца вверху. Затем нажмите кнопку CTRL+1 чтобы открыть Форматирование ячеек диалоговое окно. Теперь нажмите на Пользовательский формат числа. Далее введите d-mmm-yyyy hh:mm:ss AM/PM в Тип поле. Наконец, нажмите кнопку OK.
Формула разбивки:
Формула в ячейке C5:
➤ IF(B5="","",C5))
Сайт функция IF ничего не возвращает, если ячейка B5 пустое. В противном случае возвращается то же значение, которое хранится в C5 .
➤ СЕЙЧАС()
Сайт функция NOW возвращает текущую дату и время.
➤ И(B5"",D5B5)
Сайт функция AND возвращает TRUE если оба аргумента истинны, т.е. клетка B5 не пустой и клетки B5 и D5 не имеют одинакового значения.
➤ IF(AND(B5"",D5B5),NOW(),IF(B5="","",C5))
Если функция AND возвращает TRUE , то функция IF возвращает текущую дату и время, полученные из функция NOW В противном случае возвращается результат, полученный из аргумента, содержащего параметр функция IF .
Формула в ячейке D5:
➤ ISNUMBER(D5)
Сайт функция ISNUMBER возвращает TRUE если ячейка D5 содержит число. В противном случае возвращается Ложь .
➤ AND(ISNUMBER(D5),B5=D5)
Сайт функция AND возвращает TRUE если ячейка D5 содержит число и ячейки B5 и D5 имеют одинаковое значение. Он возвращает FALSE иначе.
➤ OR(C5="",AND(ISNUMBER(D5),B5=D5))
Сайт функция ИЛИ возвращает TRUE если хоть один из аргументов истинен, т.е. клетка C5 пуст или функция AND возвращает TRUE . Возвращается FALSE если все аргументы ложны.
➤ IF(OR(C5="",AND(ISNUMBER(D5),B5=D5)),D5,B5)
Сайт функция IF возвращает то же значение, которое хранится в ячейке D5 если функция ИЛИ возвращает TRUE В противном случае возвращается значение ячейки B5 .
➤ IF(B5="","",IF(OR(C5="",AND(ISNUMBER(D5),B5=D5)),D5,B5)))
Сайт функция IF ничего не возвращает, если ячейка B5 пуст. В противном случае возвращается результат, полученный из аргумента, содержащего функция IF .
Подробнее: Как вставить временную метку Excel при изменении ячейки без VBA (3 способа)
Похожие чтения
- Как вставить статическую дату в Excel (4 простых метода)
- Excel VBA: вставка временной метки при выполнении макроса
- Как вставить штамп даты Excel при изменении ячеек в строке
- Преобразование временной метки Unix в дату в Excel (3 метода)
2. Применение кода VBA для вставки временной метки в Excel при изменении ячейки
Вы также можете получить временную метку в excel при изменении ячейки с помощью VBA. Для этого выполните следующие действия.
📌 Шаги
- Сначала щелкните правой кнопкой мыши на вкладке целевого рабочего листа. Затем выберите Посмотреть код Откроется модуль кода для данного рабочего листа.
- Затем скопируйте следующий код с помощью кнопки копирования в правом верхнем углу.
Private Sub Worksheet_Change(ByVal Target As Range) Dim CellCol, TimeCol, Row, Col As Integer Dim DpRng, Rng As Range CellCol = 2 TimeCol = 3 Row = Target.Row Col = Target.Column If Row <= 4 Then Exit Sub Timestamp = Format(Now, "DD-MM-YYYY HH:MM:SS AM/PM") If Target.Text "" Then If Col = CellCol Then Cells(Row, TimeCol) = Timestamp Else On Error Resume Next Set DpRng = Target.Dependents ForEach Rng In DpRng If Rng.Column = CellCol Then Cells(Rng.Row, TimeCol) = Timestamp End If Next End If End If End Sub
- После этого вставьте скопированный код в пустой модуль, как показано ниже.
- Затем сохраните документ как рабочая книга с поддержкой макросов Теперь начните вводить данные в ячейки столбца B. Вы получите те же результаты, что и ранее.
Объяснение кода VBA:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim CellCol, TimeCol, Row, Col As Integer
Dim DpRng, Rng As Range
Объявление необходимых переменных.
CellCol = 2
Колонка ввода данных.
TimeCol = 3
Колонка временной метки.
Row = Target.Row
Col = Target.Column
Сохранение номеров строки и столбца выделенной ячейки.
If Row <= 4 Then Exit Sub
Любые изменения в пределах 4 верхних строк не создадут временную метку.
Timestamp = Format(Now, "DD-MM-YYYY HH:MM:SS AM/PM")
Временная метка будет отформатирована таким образом. Измените ее по мере необходимости.
If Target.Text "" Then
If Col = CellCol Then
Cells(Row, TimeCol) = Timestamp
Создайте временную метку, если выбранная ячейка пуста.
При ошибке продолжить Далее
При возникновении ошибки игнорируется.
Set DpRng = Target.Dependents
Для каждого Rng в DpRng
If Rng.Column = CellCol Then
Cells(Rng.Row, TimeCol) = Timestamp
Создайте временные метки для диапазона ячеек, если он не пуст.
Подробнее: Как автоматически вставлять записи данных с временными метками в Excel (5 методов)
О чем следует помнить
- Чтобы получить правильно отформатированную метку времени, необходимо использовать пользовательский формат для ячеек в столбце B.
- Альтернативная формула работает только при вводе данных в пустые ячейки.
- Здесь ввод данных и столбец временной метки жестко закодированы в коде VBA. Вам необходимо изменить код в соответствии с вашим набором данных.
Заключение
Теперь вы знаете, как сделать временную метку в excel при изменении ячейки. Если у вас возникли дополнительные вопросы или предложения, пожалуйста, воспользуйтесь для этого разделом комментариев ниже. Вы также можете посетить наш сайт ExcelWIKI блог, чтобы узнать больше об excel. Оставайтесь с нами и продолжайте учиться.