0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Как автоматически заполнять дату в ячейке, когда соседняя ячейка обновляется в Excel?

Автоматическое обновление даты в ячейке при изменении значения другой ячейки (рассчитывается по формуле)

Допустим, у меня есть формула в C2 =A2+B2 . Когда значение (фактическое значение, а не формула) в C2 изменяется, я хотел бы, чтобы текущая дата и время обновлялись в D2.

Многие коды и приемы VBA не работали, когда формула вводится в C2; ни один из них не работает. В C2 дата и время автоматически корректируются, если я ввожу значение вручную. Это связано с тем, что вводится/изменяется фактическое значение, а формула остается неизменной.

Есть ли у меня возможность создать код VBA (или другое решение), который обновляет D2 при изменении C2?

В идеальном мире я бы хотел, чтобы это было активно в ячейках C2:C30 (плюс D2:D30 — дата и время).

Использование программы Excel 2010

Ответов (4) 4

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

Наличие C2 в качестве входного параметра для UDF в D2 говорит Excel, что он должен заново оценить D2 при каждом изменении C2 (т.е. если для рабочей книги включен автоматический расчет формул).

РЕДАКТИРОВАТЬ:

Важно указать формат даты и времени D2-Cell, иначе он будет отображать значение даты в виде числового значения.

И вы можете расширить формулу до нужного диапазона, перетащив ее, если вы сохраните ссылку C2 в относительной формуле D2.

Примечание: Это решение может быть не идеальным, так как дата в D2 сбрасывается на текущее значение каждый раз, когда Excel пересчитывает книгу. Для того чтобы D2 отражал только последнее изменение C2, необходимо отслеживать предыдущие значения C2. Это можно реализовать, например, в UDF, указывая адрес в дополнение к значению входного параметра, сохраняя входные параметры на скрытом листе и сравнивая их с предыдущими значениями при каждом вызове UDF.

Читайте так же:
Как быстро усреднить видимые / отфильтрованные ячейки только в Excel?

Дополнение

В этом примере мы отслеживаем изменения значений ячеек и возвращаем дату и время, когда наблюдалось последнее изменение. При его использовании следует помнить, что:

Использование FROM такое же, как описано выше.

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

В свойствах документа для книги хранится последнее значение ячейки, а также время и дата, когда было обнаружено изменение. Размер файла может значительно увеличиться, если формула используется с большими наборами данных, поскольку объем памяти (значение последней ячейки + дата последнего изменения) увеличивается для каждой ячейки, отслеживаемой формулой. Excel также может испытывать трудности с обработкой большого количества свойств документа, и код в конечном итоге может замедлиться.

При изменении имени рабочего листа вся информация об отслеживании содержащихся в нем ячеек теряется.

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

Приведенный ниже код не был протестирован и должен рассматриваться только в качестве пробного варианта. Используйте его на свой страх и риск.

Автоматическое фиксирование даты при изменении данных в ячейке с выпадающим списком

Помогите с решением следующей задачи:
В таблице есть несколько столбцов, расположенных в разных местах таблицы (не по порядку) В них ежедневно собираются данные по выработке работников. Нужно фиксировать каждую дату изменения стадии работы с клиентом (столбца I) в соответствующую ячейку с названием статуса (U/V/W/X/Y/Z/AA). Информация по статусам на Листе 2

Важно не корректировать значение ячейки с отметкой времени и не удалять дату. Возможно, есть другое решение

Описания решений в сети либо не работают, либо не подходят к моей ситуации. Я только читаю о макросах, поэтому надеюсь на четкий ответ или предложение. ЦЕЛЬ: Мне нужно понять, сколько времени прошло от одного состояния клиента до другого. Сколько времени ушло на завершение продажи клиенту.

Читайте так же:
Как автоматически объединить пустые ячейки выше / слева в Excel?

Этот файл прикреплен.

Anexos (на английском языке)

Копия ОП_№2_Воронка.xlsx (96.7 Кб, 34 просмотров)

Автоматическое изменение цвета при изменении числового значения в соседней ячейке
Здравствуйте. если с темой повторился, дайте пожалуйста ссылку где прочитать.. вообщем суть.

Автоматическое проставление даты и времени при изменении ячейки
В ячейке забита формула "=ЕСЛИ(RC="";"";ТДАТА())" соответственно как только ячейка RC1 перестает.

Как сделать автоматическое копирование данных при их изменении?
Я не люблю C++, но вынужден программировать на нем. До этого я пользовался языком, в котором нет.

Firebird 2.5 Автоматическое обновление содержимого DataGridView при изменении данных
Всем доброго времени суток подскажите как обновлять автоматически Datagridview при добавлении.

Попробуйте изменить дату в столбцах U, V, W, X, Y, Z и AA
Ячейки с введенной датой нельзя сделать активной без снятии защиты. Снять защиту можно вводом в ячейку А1 Lelikas. Шрифт в этой ячейке белый, поэтому слово снятия защиты не будет видно.

В столбце I "Стадия работы с клиентом" у вас выпадающие списки в которых вы выбираете статус в зависимости от количества введенных дат. Эту работу можно поручить формуле

Прикрепления

Копия ОП_№2_Воронка_01.rar (48.0 Кб, 16 просмотров)

AlexM , спасибо огромное. Дело еще в том, что мне необходимо, когда меняешь "Стадию работы с клиентом", проставлялась автоматически текущая дата в соотв. ячейке "Дата внесения изменений статуса 1,2,3,4,5,6,7 т.е. в дальнейшем можно было увидеть, на каком стадии завис клиент, и сколько прошло времени до перехода на другой статус. Возможно это только в моих фантазиях получится воплотить, но если с последней даты прошло более 5 дней, последняя дата подсвечивается желтым, более 10 дней, то красным цветом.

Еще раз спасибо.

Читайте так же:
Как быстро вставить пустой столбец между каждым другим столбцом в Excel?

Вложения

Копия ОП_№2_Воронка_02.rar (50.0 Кб, 24 просмотров)

Это потрясающе. Ты гений.

А когда вы вводите клиента в колонку E, вы можете автоматически подтянуть текущую дату в колонку T.

А что касается моей фантазии, то если от даты последнего статуса U, V, W, X, Y, Z прошло более 5 дней по отношению к текущей дате, то она выделяется желтым цветом, более 10 дней — красным.

Лучший ответСообщение было отмечено Lelikas123 как решение

Решение

Вложения

Копия ОП_№2_Воронка_03.rar (50.1 Кб, 24 просмотров)

Почти точно то, что нам нужно. Единственный нюанс, цветом выделяется только последняя дата, то есть если даты уже установлены в ячейках U, V, то их выделять не нужно, выделяется только последняя заполненная датой ячейка, то есть ячейка W по отношению к текущей дате.

Не знаю, ясно ли я выразилась.

Добавлено через 11 минут
В столбец S вставить последнюю дату изменения ячейки F, т.е. при изменении ячейки F, автоматически меняется дата в ячейке S

Лучший ответСообщение было отмечено Lelikas123 как решение

Решение

Объявления

Копия ОП_№2_Воронка_04.rar (50.0 Кб, 6 просмотров)

AlexM, мне очень неудобно. На запрос Вы отреагировали очень быстро, что было неожиданно. Я не в первый раз формулировал запрос, поэтому не учел этот момент. Это моя последняя просьба. Я буду иметь в виду.

Правильный файл прилагается

Прикрепленные файлы

Копия ОП_№2_Воронка_05.rar (80.9 Кб, 4 просмотров)

Лучший ответСообщение было отмечено Lelikas123 как решение

Решение

Прикрепления

Копия ОП_№2_Воронка_06.rar (49.2 Кб, 25 просмотров)

На форуме есть специальные инструменты для выражения благодарности и БОЛЬШОГО СПАСИБО.

Меню пользователя @ AlexM

AlexM, доброе утро, вы можете помочь мне снова? Поскольку этапы изменились и были добавлены новые параметры, можете ли вы посмотреть макрос?

Читайте так же:
Как быстро получить адрес именованного диапазона в Excel?

Первоначальные требования выполнены, изменено количество статусов, порядок в ячейках. МАЙ СПИСОК

Текущая дата автоматически извлекалась из столбца V всякий раз, когда клиент вводился в столбец E

Необходимо, когда меняешь "Стадию работы с клиентом", проставлялась автоматически текущая дата в соотв. ячейке "Дата внесения изменений статуса X.Y.Z.AA т.е. в дальнейшем можно было увидеть, на каком стадии завис клиент, и сколько прошло времени до перехода на другой статус. Если с последней даты статуса X.Y.Z.AA прошло более 5 дней по отношению к текущей дате, то она дата подсвечивается желтым, более 10 дней, то красным цветом, если даты уже проставлены в ячейках X, Y, то их выделять не нужно, выделяется только последняя заполненная с датой ячейкой т.е. ячейка Z относительно текущей даты.

В столбце W вставьте последнюю дату, когда ячейка F была изменена, т.е. когда изменяется ячейка F, автоматически изменяется дата в ячейке W

В ячейке с датой очень важно, чтобы значение не изменялось, а дата не удалялась.

Вложения

Воронка.rar (40.0 Кб, 6 просмотров)

Вложения

Воронка_01.rar (32.1 Кб, 15 просмотров)

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

Порядок, в котором расположены ячейки, был добавлен в качестве статуса состояния. МАЙСКИЙ СПИСОК

Необходимо, когда меняешь "Стадию работы с клиентом", проставлялась автоматически текущая дата в соотв. ячейке "Дата внесения изменений статуса Y.Z.AA.AB.AC т.е. в дальнейшем можно было увидеть, на каком стадии завис клиент, и сколько прошло времени до перехода на другой статус. Если с последней даты статуса Y.Z.AA.AB.AC прошло более 5 дней по отношению к текущей дате, то она дата подсвечивается желтым, более 10 дней, то красным цветом, если даты уже проставлены в ячейках Y, Z, то их выделять не нужно, выделяется только последняя заполненная с датой ячейкой т.е. ячейка AA относительно текущей даты.

Читайте так же:
Как быстро ранжировать значения, игнорируя ошибки в Excel?

В столбце W введите дату заполнения ячейки Е.

В столбце X вставьте последнюю дату, когда ячейка F была изменена, т.е. когда ячейка F будет изменена, дата в ячейке X будет изменена автоматически.

Внимание: Ячейки, содержащие введенные даты, нельзя сделать активными без снятия защиты. Ячейку A1 можно разблокировать, введя Lelikas.

Важно, чтобы значение в ячейке с введенной датой не корректировалось и не удалялось.

голоса
Рейтинг статьи
Ссылка на основную публикацию
Adblock
detector