Перейти до основного
Підтримка
Вхід
Вхід за допомогою облікового запису Microsoft
Увійдіть або створіть обліковий запис.
Вітаємо,
Виберіть інший обліковий запис.
У вас є кілька облікових записів
Виберіть обліковий запис, за допомогою якого потрібно ввійти.

За замовчуванням можна друкувати звіти, які не містять записів. Щоб вирішити цю проблему, можна скористатися макросом або кодом Microsoft Visual Basic for Applications (VBA), щоб виявити відсутність записів у звіті, а потім скасувати операцію друку. У цій статті пояснюється, як використовувати обидві методи.

У цій статті

Імовірно, потрібно скасувати друк звіту, якщо він не містить жодного запису. Наприклад, якщо ви починаєте продавати новий продукт, імовірно, буде певний період часу, протягом якого ви ще не зареєстрували будь-які продажі. Тому слід враховувати можливість того, що деякі звіти можуть не містити жодних докладних записів і що агрегатні функції, наприклад функція Count , можуть не враховуватися. Щоб належним чином обробити такий екземпляр, можна створити макрос, який скасовує завдання друку. Ви також можете додати кілька рядків ретельно розміщеного коду VBA, щоб зробити те ж саме. VBA – це мова програмування, яку Access використовує.

Ви додаєте макрос або код VBA до процедури події On No Data звіту. Access запускає подію On No Data щоразу, коли ви запускаєте звіт, який не містить записів. Макрос і код VBA, описані в цій статті, відображають відповідне повідомлення та скасовують друк звіту, якщо цей звіт не містить даних. Під час додавання макросу або коду VBA до процедури події On No Data макрос або код VBA запускається щоразу, коли ви відкриваєте звіт, який не містить записів. Якщо натиснути кнопку OK , щоб закрити оповіщення, макрос також закриє пустий звіт. Якщо додати до звіту макрос або код VBA, пустий звіт не відкриється під час спроби відобразити його в поданні звіту або макеті, але його можна відкрити в режимі конструктора.

Скасування друку за допомогою макросу

Макрос, описаний у цьому розділі, відображає оповіщення під час спроби надрукувати пустий звіт. Якщо натиснути кнопку OK , щоб закрити вікно повідомлення, макрос автоматично скасовує операцію друку. Якщо не додати оповіщення, воно відображатиметься так, ніби нічого не відбувається, коли ви спробуєте надрукувати звіт – те, що, ймовірно, заплутає користувачів звіту.

Створення макросу

  1. В області переходів клацніть правою кнопкою миші звіт, який потрібно змінити, і виберіть конструктор.

  2. На вкладці Конструктор у групі Відображення або приховання натисніть кнопку Аркуш властивостей.

    -або-

    Двічі клацніть поле у верхньому лівому або правому куті звіту залежно від регіональних і мовних параметрів.

  3. Перейдіть на вкладку Подія та в полі властивості Без даних натисніть кнопку Кнопка "Конструктор".

    Відкриється діалогове вікно Вибір побудовника .

  4. Виберіть конструктор макросів і натисніть кнопку OK.

    Конструктор макросів запустить і відобразить пустий макрос.

  5. У розкривному списку дій макросів у вікні конструктора макросів виберіть Пункт Повідомлення зі списку.

  6. у полі Повідомлення введіть текст оповіщення.

    Наприклад, можна ввести таке: Немає записів для звіту.

  7. За потреби змініть значення аргументу в полі Сигнал із Так на Ні , а потім у списку Тип виберіть тип піктограми, яка має відображатися в оповіщенні.

  8. У полі Назва введіть заголовок оповіщення.

    Наприклад, можна ввести Без записів.

  9. Виберіть розкривний список дій макросу під дією Повідомлення , а потім натисніть кнопку Скасуватиповідомлення.

  10. На вкладці Конструктор у групі Закрити натисніть кнопку Зберегти.

  11. На вкладці Конструктор у групі Закрити натисніть кнопку Закрити. Якщо з'явиться оповіщення із запитом на збереження змін у макросі та властивості звіту, натисніть кнопку Так, закрийте звіт, збережіть зміни, якщо з'явиться відповідний запит, і перейдіть до наступних кроків, щоб перевірити його.

Перевірка макросу

  • В області переходів клацніть правою кнопкою миші звіт, який містить макрос, і виберіть команду Друк. Залежно від вибраних параметрів Access відображає оповіщення.

    Коли ви натиснете кнопку OK , щоб закрити повідомлення, дія Скасувативиявлення припинить друк. Оскільки ви не вказали жодної іншої події (наприклад, відкриття звіту для перегляду), звіт закриється.

На початок сторінки

Скасування друку за допомогою коду VBA

Описаний тут код VBA працює так само, як макрос, описаний у попередньому розділі, – відображається оповіщення під час відкриття пустого звіту, а потім скасовує операцію друку, коли ви закриваєте оповіщення.

Додати код VBA

  1. В області переходів клацніть правою кнопкою миші звіт, який потрібно змінити, і виберіть конструктор.

    Примітка.: Щоб завершити цю процедуру, скористайтеся звітом, який не містить записів.

  2. На вкладці Конструктор у групі Відображення або приховання натисніть кнопку Аркуш властивостей.

    -або-

    Двічі клацніть поле у верхньому лівому або правому куті звіту залежно від регіональних і мовних параметрів.

  3. Перейдіть на вкладку Подія та в полі властивості Без даних натисніть кнопку Кнопка "Конструктор".

    Відкриється діалогове вікно Вибір побудовника .

  4. Виберіть конструктор кодів і натисніть кнопку OK.

    Редактор Visual Basic запускає та відображає пусту процедуру події.

  5. Введіть наведений нижче код у редакторі Visual Basic, щоб процедура Report_NoData відобразяться приблизно так:

    Private Sub Report_NoData (Cancel As Integer)
    MsgBox "There are no records to report", vbExclamation, "No Records"
    Cancel = True
    End Sub
  6. Завершивши, відкрийте вкладку Файл і натисніть кнопку Зберегти.

  7. Відкрийте вкладку Файл і натисніть кнопку Закрити та поверніться до програми Microsoft Access.

  8. Закрийте відкритий звіт і натисніть кнопку Так , щоб підтвердити збереження.

  9. В області переходів клацніть правою кнопкою миші щойно змінений звіт і виберіть пункт Друк. Залежно від вибраних параметрів Access відображає оповіщення.

Процедура Report_NoData використовує функцію MsgBox , щоб відобразити повідомлення " Немає записів для звіту " та кнопки OK . Якщо натиснути кнопку OK, рядок "Скасувати=Істина" процедури доручить Програмі Access скасувати звіт. Скасувати – це аргумент, який автоматично передається до процедури події та завжди перевіряється програмою Access після завершення процедури події.

На початок сторінки

Потрібна додаткова довідка?

Потрібні додаткові параметри?

Ознайомтеся з перевагами передплати, перегляньте навчальні курси, дізнайтесь, як захистити свій пристрій тощо.

Спільноти допомагають ставити запитання й відповідати на них, надавати відгуки та дізнаватися думки висококваліфікованих експертів.

Чи ця інформація була корисною?

Наскільки ви задоволені якістю мови?
Що вплинуло на ваші враження?
Натиснувши кнопку "Надіслати", ви надасте свій відгук для покращення продуктів і служб Microsoft. Ваш ІТ-адміністратор зможе збирати ці дані. Декларація про конфіденційність.

Дякуємо за відгук!

×