Zwischensummen ziehen in mehrseitigen Rechnungen

Bei mehrseitigen Rechnungen behalten Sie den ▄berblick durch eine Zwischensumme der einzelnen Positionen am Seitenende. Solche Summen gibt das Ereignis ╗Drucken½ aus.
Grundlage dafⁿr ist ein Textfeld namens ╗ZwischSumme½, das Sie im Seitenfu▀ platzieren. Dort erscheint spΣter die Zwischensumme. Alles Weitere wird von zwei Ereignisprozeduren erledigt, von denen die erste an die Ereigniseigenschaft ╗BeimDrucken½ des Seitenkopfes gebunden ist:

Private Sub Seitenkopf0_Print(Cancel _ As Integer, PrintCount As Integer)
Me!ZwischSumme = 0
End Sub


Diese Prozedur initialisiert das Feld ╗ZwischSumme½ fⁿr jede neue Seite mit dem Wert ╗0½. Die zweite Prozedur ist an das Ereignis ╗BeimDrucken½ des Datailbereichs gebunden:

Private Sub Detail1_Print(Cancel _ As Integer, PrintCount As Integer)
If PrintCount = 1 Then
Me!ZwischSumme = Me!ZwischSumme + _Me!Gesamtpreis
End If
End Sub


Die Prozedur erh÷ht bei jedem Datensatz die Zwischensumme um den Betrag der aktuellen Rechnungsposition (im aktuellen Beispiel ╗Gesamtpreis½). Davor wird die Eigenschaft ╗PrintCount½ auf den Wert ╗1½ untersucht. Das ist n÷tig, weil Access das Print-Ereignis bei Rechnungspositionen ⁿber mehrere Seiten auch mehrmals aufruft. Die Eigenschaft ╗PrintCount½ gibt an, wie oft das Ereignis fⁿr den aktuellen Bereich bereits aufgerufen wurde. Damit Access bestimmte Positionen nicht mehrfach addiert, darf die Berechnung nur beim Auftreten des ersten Ereignisses erfolgen.