Anulowanie drukowania raportu, który nie zawiera żadnych rekordów

Uwaga: Staramy się udostępniać najnowszą zawartość Pomocy w Twoim języku tak szybko, jak to możliwe. Ta strona została przetłumaczona automatycznie i może zawierać błędy gramatyczne lub nieścisłości. Chcemy, aby ta zawartość była dla Ciebie przydatna. Prosimy o powiadomienie nas, czy te informacje były pomocne, u dołu tej strony. Oto angielskojęzyczny artykuł do wglądu.

Domyślnie można drukować raporty, które nie zawierają rekordów. Aby rozwiązać ten problem, możesz użyć makra lub kodu języka Microsoft Visual Basic for Applications (VBA), aby wykryć Brak rekordów w raporcie, a następnie anulować operację drukowania. W czynnościach opisanych w tym artykule wyjaśniono, jak korzystać z obu technik.

Co chcesz zrobić?

Anulowanie drukowania za pomocą makra

Anulowanie drukowania przy użyciu kodu VBA

Prawdopodobnie chcesz anulować drukowanie raportu, gdy nie zawiera on żadnych rekordów. Jeśli na przykład zaczynasz sprzedawać nowy produkt, może być dostępny okres czasu, w którym jeszcze nie zarejestrowano żadnych transakcji. Dlatego należy wziąć pod uwagę możliwość, że niektóre raporty mogą nie zawierać żadnych rekordów szczegółów, a funkcje agregujące, takie jak funkcja ile. liczb , mogą nie mieć nic do obliczenia. Aby bezpiecznie obsługiwać takie wystąpienie, możesz utworzyć makro anuluje zadanie wydruku. Możesz również dodać kilka wierszy starannie wprowadzanego kodu VBA, aby wykonać tę samą czynność. VBA jest językiem programowania używanym przez Access.

Do raportu nie można dodać makra lub kodu języka VBA, korzystając z procedury zdarzenia daTa . Access wyzwala zdarzenie przy braku danych przy każdym uruchomieniu raportu, który nie zawiera rekordów. Makro i kod języka VBA opisane w tym artykule wyświetlają odpowiedni komunikat i anulują drukowanie raportu, gdy raport nie zawiera danych. Po dodaniu makra lub kodu VBA do procedury zdarzenia bez danych makro lub kod języka VBA są uruchamiane przy każdym otwarciu raportu, który nie zawiera rekordów. Po kliknięciu przycisku OK w celu zamknięcia dowolnego komunikatu ostrzegawczego makro zamyka również pusty raport. Po dodaniu makra lub kodu VBA do raportu pusty raport nie zostanie otwarty, gdy spróbujesz go wyświetlić w widoku raportu lub w widoku układu, ale możesz otworzyć raport w widoku projektu.

Anulowanie drukowania za pomocą makra

Makro opisane w tej sekcji powoduje wyświetlenie komunikatu ostrzegawczego podczas próby wydrukowania pustego raportu. Po kliknięciu przycisku OK w celu zamknięcia okna wiadomości makro automatycznie anuluje operację drukowania. Jeśli nie zostanie wyświetlony komunikat alertu, zostanie on wyświetlony tak, jakby nic się nie dzieje, gdy próbujesz wydrukować raport — jest to coś, co prawdopodobnie pomylić użytkowników raportu.

Tworzenie makra

  1. W okienku nawigacji kliknij prawym przyciskiem myszy raport, który chcesz zmienić, a następnie kliknij polecenie Widok projektu.

  2. Na karcie Projektowanie w grupie Pokazywanie/ukrywanie kliknij przycisk Arkusz właściwości.

    — lub —

    Kliknij dwukrotnie pole w lewym górnym rogu raportu, w zależności od ustawień regionalnych i językowych.

  3. Kliknij kartę zdarzenie , a następnie w polu właściwości przy braku danych kliknij pozycję Przycisk Konstruktor .

    Zostanie wyświetlone okno dialogowe Wybieranie konstruktora .

  4. Kliknij pozycję Konstruktor makr, a następnie kliknij przycisk OK.

    Zostanie uruchomiony Projektant makr i zostanie wyświetlone puste makro.

  5. Na liście rozwijanej akcji makr w oknie projekt makra wybierz pozycję MessageBox z listy.

  6. w polu wiadomość wpisz tekst komunikatu alertu.

    Na przykład można wprowadzić następujące dane: Brak rekordów do raportowania.

  7. Opcjonalnie Zmień wartość argumentu w polu sygnał dźwiękowy z tak na nie , a następnie na liście Typ wybierz typ ikony, która ma być wyświetlana w komunikacie alertu.

  8. W polu tytuł wpisz tytuł komunikatu alertu.

    Na przykład nie można wprowadzać żadnych rekordów.

  9. Wybierz listę rozwijaną akcji makr poniżej akcji MessageBox , a następnie wybierz pozycję AnulujZdarzenie.

  10. Na karcie projektowanie w grupie zamykanie kliknij przycisk Zapisz.

  11. Na karcie Projektowanie w grupie Zamykanie kliknij pozycję Zamknij. Jeśli zostanie wyświetlony komunikat z pytaniem, czy chcesz zapisać zmiany w makrze i właściwości Report, kliknij przycisk tak, zamknij raport, Zapisz zmiany, jeśli zostanie wyświetlony monit, i przejdź do następnych kroków, aby je przetestować.

Testowanie makra

  • W okienku nawigacji kliknij prawym przyciskiem myszy raport, który zawiera makro, a następnie kliknij polecenie Drukuj. W zależności od wybranych opcji program Access wyświetli komunikat alertu.

    Po kliknięciu przycisku OK w celu zamknięcia wiadomości Akcja AnulujZdarzenie zatrzymuje operację drukowania. Ponieważ nie określono żadnych innych zdarzeń (takich jak otwieranie raportu do wyświetlania), raport zostanie zamknięty.

Początek strony

Anulowanie drukowania przy użyciu kodu VBA

Opisany tu kod języka VBA wygląda podobnie jak makro opisane w poprzedniej sekcji — wyświetla komunikat alertu podczas otwierania pustego raportu, a następnie anuluje operację drukowania po zamknięciu komunikatu alertu.

Dodawanie kodu VBA

  1. W okienku nawigacji kliknij prawym przyciskiem myszy raport, który chcesz zmienić, a następnie kliknij polecenie Widok projektu.

    Uwaga: Aby wykonać tę procedurę, użyj raportu, który nie zawiera rekordów.

  2. Na karcie Projektowanie w grupie Pokazywanie/ukrywanie kliknij przycisk Arkusz właściwości.

    — lub —

    Kliknij dwukrotnie pole w lewym górnym rogu raportu, w zależności od ustawień regionalnych i językowych.

  3. Kliknij kartę zdarzenie , a następnie w polu właściwości przy braku danych kliknij pozycję Przycisk Konstruktor .

    Zostanie wyświetlone okno dialogowe Wybieranie konstruktora .

  4. Kliknij pozycję Konstruktor kodu, a następnie kliknij przycisk OK.

    Zostanie uruchomiony Edytor Visual Basic i zostanie wyświetlona pusta procedura zdarzenia.

  5. Wpisz poniższy kod w edytorze Visual Basic, aby Procedura Report_NoData była wyświetlana w następujący sposób, gdy skończysz:

    Private Sub Report_NoData (Cancel As Integer)
    MsgBox "There are no records to report", vbExclamation, "No Records"
    Cancel = True
    End Sub
  6. Po zakończeniu kliknij pozycję plik, a następnie kliknij pozycję Zapisz.

  7. Kliknij pozycję plik, a następnie kliknij pozycję Zamknij i wróć do programu Microsoft Access.

  8. Zamknij otwarty raport, a następnie kliknij przycisk tak , aby potwierdzić zapis.

  9. W okienku nawigacji kliknij prawym przyciskiem myszy raport, który został właśnie zmieniony, i kliknij pozycję Drukuj. W zależności od wybranych opcji program Access wyświetli komunikat alertu.

W procedurze Report_NoData jest używana funkcja OknoKomunikatu w celu wyświetlenia komunikatu o braku rekordów i przycisku OK . Po kliknięciu przycisku OKwiersz "Anuluj = prawda" w procedurze instruuje program Access, aby anulował ten raport. Cancel to argument, który jest automatycznie przekazywany do procedury zdarzenia i jest zawsze sprawdzany przez program Access po zakończeniu procedury zdarzenia.

Początek strony

Rozwijaj umiejętności związane z pakietem Office
Poznaj szkolenia
Uzyskuj nowe funkcje w pierwszej kolejności
Dołącz do niejawnych testerów pakietu Office

Czy te informacje były pomocne?

Dziękujemy za opinię!

Dziękujemy za opinię! Wygląda na to, że połączenie Cię z jednym z naszych agentów pomocy technicznej pakietu Office może być pomocne.

×