Облік часу останньої зміни записів в таблиці можна вести за допомогою форми, що містить макрос. При використанні цієї форми для зміни запису макрос зберігає дату і час в таблиці. При цьому дата і час зберігаються тільки для самого останнього зміни.
Примітка: Описані в цій статті, застосовуються до баз даних Access на комп'ютері. Не використовуйте ці процедури для присвоєння міток часу полям у веб-базах даних. Замість цього для відстеження часу внесення змін можна використовувати стовпці SharePoint Змінено. Додаткові відомості див. У довідці SharePoint.
Порада: Якщо потрібно вести облік тільки часу створення записів, а не часу їх зміни, можна просто створити в таблиці поле для відстеження і використання властивості поля Значення за замовчуванням. щоб при створенні кожного запису фіксувати штампа часу. Додаткові відомості про це наведені в розділі Див. Також.
Загальні відомості
Для збереження дати і часу зміни записів в таблиці необхідно виконати дії, описані нижче.
Дія 1. Додавання полів у таблицю Перед записом дати та часу потрібно передбачити місце для їх зберігання. На першому етапі необхідно створити поля в таблиці, що містить записи, які потрібно відстежувати. Для запису дати і часу створіть два окремих поля - одне для дати, інше для часу. Якщо потрібно зберігати тільки дату або тільки час, можна створити одне поле.
Дія 2. Створення макросу для запису дати і часу Залежно від того, чи потрібно записувати тільки дату, тільки час або обидва значення, макрос повинен виконувати одне або два дії. При створенні макросу потрібно вказувати тільки поля, призначені для зберігання дати та часу, а не таблицю, в якій містяться ці поля. Завдяки цьому можна буде використовувати цей макрос для інших таблиць і форм.
Крок 3. Додавання макросу до форми введення даних Макрос слід додати до властивості До відновлення форми, яка використовується для редагування записів в таблиці. Якщо для цього використовуються і інші форми, можна додати макрос до кожної з них. В такому випадку дата і час будуть фіксуватися незалежно від того, яка форма використовується для редагування запису.
підготовка
Перед виконанням перелічених вище дій слід звернути увагу на деякі особливості.
Користувач повинен дозволити виконання макросів в базі даних. Якщо користувач відкриє базу даних і не дозволить виконання макросів, макрос НЕ буде фіксувати штамп часу для записів. Якщо база даних зберігається в надійне розташування, виконання макросів дозволяється автоматично.
Якщо користувач редагує записи, але не використовує форму введення даних, яка містить макрос для фіксації штампів часу записів, для цих записів штамп часу зафіксовано не буде.
Оскільки дата і час зберігаються в полях таблиці, значення цих полів перезаписувати при кожній зміні записи. Інакше кажучи, можна зберігати тільки дату і час останнього зміни.
Якщо потрібно записувати дати і часу створення запису, просто додати поля в таблицю і задати властивості Значення за замовчуванням для цього поля Now () або Date ().
Додаткові відомості див. У розділі Див. Також.
Якщо файл бази даних має застарілий формат і застосовується захист на рівні користувача, необхідно мати дозвіл на зміну структури таблиці і форм, які використовуються для редагування записів цієї таблиці.
Дія 1. Додавання полів штампа часу в таблицю
Створіть поля для зберігання даних.
Відкрийте таблицю в режимі конструктора.
Виконайте одну або обидві зазначених нижче дії.
Створення поля для зберігання дати. У стовпці Ім'я поля вікна конструктора введіть текст Дата зміни в новому рядку і виберіть Дати і часу в стовпці Тип даних.
Створіть поле для зберігання часу. У стовпці Ім'я поля вікна конструктора введіть текст Час зміни в новому рядку і виберіть Дати і часу в стовпці Тип даних.
Для збереження змін натисніть клавіші CTRL + S.
Дія 2. Створення макросу для запису дати і часу
Після створення полів необхідно створити макрос для фіксації штампа часу в цих полях. Щоб можна було використовувати цей макрос з іншими таблицями, потрібно вказувати тільки імена полів, але не імена таблиць.
Примітка: Якщо потрібно записувати тільки час або тільки дату зміни записи, слід опустити непотрібну макрокоманду.
На вкладці Створення в групі Інші виберіть Макрос. Якщо ця команда недоступна, натисніть стрілку під кнопкою Модуль або Модуль класу. а потім натисніть кнопку Макрос.
На вкладці Конструктор у групі Показати чи приховати виберіть пункт Показати всі дії.
У вікні макросу відкрийте список макрокоманд і виберіть ЗадатьЗначеніе.
1. Спочатку відобразіть всі доступні макрокоманди. Макрокоманда "ЗадатьЗначеніе" вважається потенційно небезпечною і може бути за замовчуванням прихована, оскільки використовується для зміни даних.
2. Потім виберіть у списку макрокоманду "ЗадатьЗначеніе".
В поле макрокоманди ЗадатьЗначеніе в поле елемент введіть або вставте текст [Дата зміни].
В поле вираження введіть Date ().
Відкрийте наступний список макрокоманд і виберіть варіант ЗадатьЗначеніе.
В поле макрокоманди ЗадатьЗначеніе в поле елемент введіть або вставте текст [Час зміни].
В поле вираження введіть Time ().
Натисніть клавіші CTRL + S і в діалоговому вікні Зберегти як введіть Останнього зміни.
Крок 3. Додавання полів і макросу до форми введення даних
Після створення макросу додайте його до кожної форми введення даних, за допомогою яких користувачі будуть вводити дані в відповідну таблицю.
Відкрийте форму введення даних в режимі конструктора.
На вкладці Конструктор у групі Сервіс клацніть пункт Додати існуючі поля.
У вікні Список полів в групі Поля, доступні в даному поданні перетягніть поля Дата зміни і Час зміни в форму. При необхідності подкорректируйте розмір полів і їх розміщення на формі.
Якщо вікно властивостей не відкрите, натисніть клавішу F4 для його відображення.
У вікні властивостей встановіть значення властивості Можливий вибір для Форми.
Порада: Щоб змінити значення властивості Можливий вибір. вкажіть потрібний тип вибору в списку.
У вікні властивостей відкрийте вкладку Подія.
На вкладці Подія клацніть стрілку в полі До оновлення. а потім виберіть пункт Змінено.
При використанні для редагування записів кількох форм повторіть цю процедуру для кожної форми.
Щоб перевірити, чи правильно працює макрос, відкрийте форму в режимі форми, змініть запис і натисніть клавіші SHIFT + F9. Повинні бути відображені дата і час зміни відредагованою записи.