8

В электронной таблице Excel я хотел бы автоматически обновлять ячейку с текущей датой и временем, когда другая ячейка изменяется (например, отметка времени обновления).

Существует отметка времени для каждой строки. Я хотел бы обновить их, как только одна из предыдущих ячеек в строке будет обновлена.

У вас есть указания, как это сделать?

2 ответа2

9

Создайте ячейку со значением Now(). Отформатируйте его так, как вы хотите - например, гггг / мм / дд чч: мм: сс для полной отметки времени за 24 часа.

Теперь, пока установлен автоматический пересчет (по умолчанию), каждый раз, когда изменяется другая ячейка, вы получите новую временную метку.

При дальнейшем рассмотрении, если вам нужна жестко заданная временная метка, которая обновляется только действиями, не включающими такие вещи, как открытие рабочей книги, печать и т.д., Вы можете создать макрос, прикрепленный к worksheet_change. Установите целевую ячейку как текст с определенным форматированием, как раньше. Используйте что-то вроде: Sheet1.Клетки [].Значение = текст (сейчас (), «гггг / мм / дд чч: мм: сс») для события Worksheet_Change.

Если вы поместите это в шаблон, который загружается при запуске, вам больше никогда не придется об этом думать.

8

http://chandoo.org/wp/2009/01/08/timestamps-excel-formula-help/ содержит подробную информацию о том, как реализовать временные метки с использованием рекурсивной формулы. Они работают удовольствие.

В статье рассказывается, как сначала включить циклическую формулу (по умолчанию отключено), а затем как создать циклическую формулу, которая автоматически вставляет метку времени, когда в конкретную ячейку вставляется значение.

Если ячейка для метки времени - B3, а ячейка для просмотра - C3, формула:

=IF(C3<>"",IF(B3="",NOW(),B3),"")

То есть, когда C3 не является пустым, установите B3 на NOW() (если B3 было пустым), в противном случае текущее значение B3.

Это выглядит стабильно по сравнению с обновлениями и сохраняет.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .