Verwendung von Visual Basic-Code sortieren und zwei Berichte drucken

Dieser Artikel bezieht sich auf Microsoft Access-Datenbank (.mdb oder .accdb) und Microsoft Access-Projekt (ADP).


Moderat: Erfordert grundlegende Makros, Codierung und Interoperabilität wissen.


Eine Microsoft Access 2000-Version dieses Artikels finden Sie unter 231805 .

Zusammenfassung

Dieser Artikel beschreibt eine Methode zum Sortieren und zwei Berichte drucken. Diese Methode wechselt zwischen den DoCmd.SelectObject und DoCmd.PrintOut Visual Basic zwei Berichte.

Microsoft bietet Programmierbeispiele lediglich zur Veranschaulichung, ohne ausdrückliche oder konkludente Gewährleistung. Dies beinhaltet, ist jedoch nicht beschränkt auf, konkludente Gewährleistungen der Tauglichkeit oder Eignung für einen bestimmten Zweck. Dieser Artikel setzt voraus, dass Sie mit der von Beispielen verwendeten Programmiersprache und den Tools, die zum Erstellen und Debuggen von Prozeduren verwendet werden, vertraut sind. Microsoft-Supportmitarbeiter können bei der Erläuterung der Funktionalität bestimmter Prozeduren helfen, sie werden jedoch diese Beispiele nicht verändern um eine erweiterte Funktionalität aufzuzeigen oder Prozeduren entwickeln, die Ihren Anforderungen entsprechen.

Weitere Informationen

Manchmal möchten Sie Seite 1 einen Bericht drucken, und Sortieren diese Seite mit Seite 1 eines anderen Berichts. Die Berichte öffnen und Drucken jede Seite einzeln muss die zugrunde liegende Abfrage jedes Mal ausgeführt. Eine alternative Methode ist beide Berichte in einem Bericht/Sub Main enthalten.

Sortieren und zwei Berichte drucken und die Ergebnisse testen, gehen Sie folgendermaßen vor:
  1. Öffnen Sie die Beispieldatenbank "Nordwind.mdb" oder das Access-Beispielprojekt NordwindCS.adp.
  2. Erstellen Sie ein neues Modul und geben Sie oder fügen Sie den folgenden Code:
    '***********************************'Declarations section of the module
    '***********************************
    Option Explicit
    '*********************************************************************
    'NumPages is the number of pages in the largest report. If one report
    'has fewer pages, the DoCmd.PrintOut statement for the smaller report
    'runs correctly, and no additional pages are printed.
    '*********************************************************************
    Function CollateReports(NumPages, Rpt1 As String, Rpt2 As String)
    Dim MyPageNum As Integer

    'Set the page number loop and alternate printing the report pages.
    For MyPageNum = 1 To NumPages
    'NumPages is the number of pages to print.
    DoCmd.SelectObject acReport, Rpt1, True
    DoCmd.PrintOut acPages, MyPageNum, MyPageNum
    DoCmd.SelectObject acReport, Rpt2, True
    DoCmd.PrintOut acPages, MyPageNum, MyPageNum
    Next MyPageNum
    End Function

  3. Die Testergebnisse Geben Sie folgende Zeile in das Direktfenster und dann die EINGABETASTE:
    ? CollateReports(1, "Sales by Category", "Sales Totals by Amount")
    Beachten Sie, dass Microsoft Access eine Seite aus jeder Bericht wird gedruckt.

Referenzen

Weitere Informationen über die Methode SelectObject, klicken Sie auf Microsoft Visual Basic-Hilfe auf die
Hilfe Selectobject im Office-Assistenten oder Antwort-Assistenten eingeben und dann auf Suchen , um Hilfe.

Weitere Informationen über die Methode PrintOut klicken Sie auf Microsoft Visual Basic-Hilfe in den
Hilfe Ausdruck im Office-Assistenten oder Antwort-Assistenten eingeben und dann auf Suchen , um Hilfe.
Eigenschaften

Artikelnummer: 292461 – Letzte Überarbeitung: 20.01.2017 – Revision: 1

Feedback