0 / 0 / 0
Регистрация: 20.09.2015
Сообщений: 11

Автоматически фиксировать дату и время изменения в ячейке

21.09.2015, 05:09. Показов 50930. Ответов 18
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток!

Помогите с решением следующей задачи:

В таблице есть несколько столбцов (около10), расположенных в разных местах таблицы (не по порядку) В них ежедневно собираются данные по выработке работников. Нужно фиксировать дату и время внесения данных в любую из ячеек этих столбцов.
Пример таблицы ( столбцы со значениями: В, D, F, H, J, L, N, P, R, T; Cтолбцы с датами :A, C, E, G, I, K, M, O, Q, S, U; Начиная с 4ой строки и вниз на 10 тыс строк)

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

Решения, которые расписаны в сети либо не работают либо не под мой случай. Про макросы только начал читать информацию, поэтому надеюсь на понятный ответ.

Заранее спасибо!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
21.09.2015, 05:09
Ответы с готовыми решениями:

Как автоматически регистрировать дату и время изменения данных?
Уважаемые форумчане, прошу деятельной помощи! Есть необходимость, чтобы при изменении любого поля в строке таблицы Учет автоматически...

Фиксировать время в ячейке
Если возможность зафиксировать время в ячейке в данный промежуток времени, не посмотрел на часы и вбил 13:40 , а автоматически.

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

18
 Аватар для AlexM
2904 / 1718 / 705
Регистрация: 04.09.2015
Сообщений: 3,445
21.09.2015, 09:10
Нужен пример таблицы (в формате Excel) для вашего случая.
0
 Аватар для AlexM
2904 / 1718 / 705
Регистрация: 04.09.2015
Сообщений: 3,445
21.09.2015, 09:37
Лучший ответ Сообщение было отмечено Garlem79 как решение

Решение

Вариант кода в модуле листа
Visual Basic
1
2
3
4
5
6
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
On Error Resume Next
If InStr("BDFHJLNPRTV", Split(Target.Address, "$")(1)) Then Target.Offset(0, -1) = IIf(Target <> "", Date, "") 'Time 'Now
Application.EnableEvents = True
End Sub
Вложения
Тип файла: xls Garlem79.xls (19.0 Кб, 461 просмотров)
1
0 / 0 / 0
Регистрация: 20.09.2015
Сообщений: 11
21.09.2015, 12:32  [ТС]
ALEX, спасибо Вам большое!

Все так за маленьким исключением. Нужно, чтоб высвечивались и дата и текущее время. Я попытался изменить формат ячеек, но время выдает 0:00.

Не адресовал сообщение
0
 Аватар для AlexM
2904 / 1718 / 705
Регистрация: 04.09.2015
Сообщений: 3,445
21.09.2015, 12:35
Вмеcто Date в предпоследней строке вставьте Now
В конце этой строки я закомментировал возможные варианты
Time - это только время
Now - дата и время
Date - только дата
1
0 / 0 / 0
Регистрация: 20.09.2015
Сообщений: 11
21.09.2015, 12:42  [ТС]
И еще , возможно в коде это заложено, но я в этом не разбираюсь- как сделать чтоб макрос работал начиная с 4й строки?

Добавлено через 55 секунд
Спасибо за оперативность!

Добавлено через 2 минуты
Да, поправил, работает. Осталось настроить строку.

Я неделю искал решение в сети.
0
 Аватар для AlexM
2904 / 1718 / 705
Регистрация: 04.09.2015
Сообщений: 3,445
21.09.2015, 12:53
Лучший ответ Сообщение было отмечено Garlem79 как решение

Решение

третья строка снизу должна быть
Visual Basic
1
If InStr("BDFHJLNPRTV", Split(Target.Address, "$")(1)) And Target.Row > 3 Then Target.Offset(0, -1) = IIf(Target <> "", Now, "") 'Time 'Date
1
0 / 0 / 0
Регистрация: 20.09.2015
Сообщений: 11
21.09.2015, 13:02  [ТС]
ОГРОМНОЕ ВАМ СПАСИБО!!!!!!!
0
0 / 0 / 0
Регистрация: 20.09.2015
Сообщений: 11
22.09.2015, 13:16  [ТС]
Добрый день!

Обнаружил в работе макроса небольшую Проблемку. Если столбцы 2значные, как например AB, AC, то макрос работает в столбцах A, B, AB, AC. А нужно чтобы только в назначенных столбцах работал.
Есть ли решение этому ? Я пробовал писать через "," не помогло.
0
 Аватар для AlexM
2904 / 1718 / 705
Регистрация: 04.09.2015
Сообщений: 3,445
22.09.2015, 14:52
должно работать так "BDFHJLNPRTVXZ,AB,AD,AF,AH"
0
0 / 0 / 0
Регистрация: 20.09.2015
Сообщений: 11
22.09.2015, 14:57  [ТС]
Спасибо. Дело в том. что если я пишу AH, но не хочу чтоб в A и H по отдельности работал макрос, он все равно в их работает.
0
 Аватар для AlexM
2904 / 1718 / 705
Регистрация: 04.09.2015
Сообщений: 3,445
22.09.2015, 15:01
поменяйте строку на
Visual Basic
1
If InStr("B,D,F,H,J,L,N,P,R,T,V,X,Z,AB,AD,AF,AH,", Split(Target.Address, "$")(1)) & "," And Target.Row > 3 Then Target.Offset(0, -1) = IIf(Target <> "", Now, "")
0
0 / 0 / 0
Регистрация: 20.09.2015
Сообщений: 11
22.09.2015, 15:34  [ТС]
Поменял, но все равно. У меня колонок по факту больше.
Допустим, есть колонка ВС , для которой нужна функция фиксации даты и времени изменения, но для колонок B и С по отдельности эта функция не нужна.
А у меня все равно она включается и при новом виде записи строки.
0
 Аватар для AlexM
2904 / 1718 / 705
Регистрация: 04.09.2015
Сообщений: 3,445
22.09.2015, 16:30
Лучший ответ Сообщение было отмечено Garlem79 как решение

Решение

понял причину
Visual Basic
1
If InStr(",D,F,H,J,L,N,P,R,T,V,X,Z,AB,AD,AF,AH,", "," & Split(Target.Address, "$")(1) & ",") And Target.Row > 3 Then Target.Offset(0, -1) = IIf(Target <> "", Now, "")
1
0 / 0 / 0
Регистрация: 20.09.2015
Сообщений: 11
22.09.2015, 16:47  [ТС]
Вроде теперь все ОК. Еще раз спасибо Вам!
0
0 / 0 / 0
Регистрация: 20.09.2015
Сообщений: 11
04.03.2016, 15:13  [ТС]
Доброго времени!

есть задача:

Есть потребность контролировать дату и время вводимых данных в определенный лист книги. Уже есть макрос который работает и фиксирует дату и время вводимой информации. в соседней ячейке для каждого из 10 столбцов таблицы. Макрос полностью устраивает и работает исправно.

Но, текущая модификация макроса позволяет менять внесенные ранее значения. При смене значения, дата и время актуализируются. Это влияет на дальнейшие расчеты, но дело в том, что иногда такая возможность нужна, а иногда нет, так как может привести к изменению учета. Такое случается не часто, но случается, поэтому вылавливать ошибки важно.

ячейка фиксирующая время и дату всегда слева от той в которую вводится значение.

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

Приложил образец файла. В нем 2 листа.

Буду рад если кто-нибудь сможет мне помочь.

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

Заранее спасибо!
Вложения
Тип файла: zip пример.zip (8.5 Кб, 98 просмотров)
0
0 / 0 / 0
Регистрация: 07.11.2017
Сообщений: 1
07.11.2017, 21:47
Всем привет!

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

Заранее благодарен за ответы!!!
0
0 / 0 / 0
Регистрация: 10.03.2019
Сообщений: 111
13.04.2019, 12:11
Всем привет.
Не подскажите как работает код VBA в Garlem79.xls. Открываю Garlem79.xls затем Alt+F11 затем запускаю код f5, что не так?
Миниатюры
Автоматически фиксировать дату и время изменения в ячейке  
0
0 / 0 / 0
Регистрация: 10.03.2019
Сообщений: 111
13.04.2019, 12:21
Все разобрался)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
13.04.2019, 12:21
Помогаю со студенческими работами здесь

Добавить дату и время изменения БД на главную кнопочную форму
Добрый день! Подскажите, пожалуйста, как на главную кнопочную форму, с которой начинается любая работа в моей БД, добавить дату и время...

Получить дату и время последнего изменения web-страницы(файла)
Возможно ли средствами VBA получить с web-сервера дату и время последнего изменения интернет-страницы(файла)?

Изменить дату и время создания/изменения/открытия файла без использования API
Вопрос собственно в названии. Почему без API - потому что на 32 битн. Оффисе работает с API, а на 64 битном Оффисе эта программа не...

Как фиксировать пользователей, которые вносили изменения в БД
Ну, в общем объясните, кто знает, как вносить пользователей в отдельную таблицу, которые что нибудь изменяли в БД. Заранее Спасибо) если...

Как и где фиксировать изменения параметров через Radiogroup
Есть проект в котором надо реализовать множество условий. От выбора условия в конце зависит стоимость работ. нужна рамка из...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Опции темы

Новые блоги и статьи
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это дополнительная запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru