Kopie ohne Kopierer
Veröffentlicht am 13.05.2004
Verwenden Sie das „Drucken“-Ereignis, um mehrere Kopien eines Datensatzes zu drucken.
Besonders beim Drucken von Aufklebern ist es oft erforderlich, daß bestimmte Datensätze mehrmals hintereinander gedruckt werden sollen.
Wenn Sie Adreßetiketten drucken möchten, fügen Sie der betreffenden Adressentabelle zunächst ein neues Datenfeld namens AnzahlKopien hinzu. Hier speichern Sie die Anzahl der Etiketten, die für den jeweiligen Datensatz ausgedruckt werden sollen. Wenn Sie beispielsweise den Wert 1 angeben, druckt Access das Original und zusätzlich eine Kopie – also insgesamt zwei Etiketten.
Auf Basis dieser Tabelle legen Sie dann einen Etikettenbericht an. Achten Sie darauf, dass Sie das Feld AnzahlKopien ebenfalls in Ihren Bericht übernehmen. Damit es hier später nicht sichtbar ist, stellen Sie die Sichtbar-Eigenschaft auf Nein ein.
Die BeimDrucken-Ereigniseigenschaft des Detailbereichs verknüpfen Sie anschließend mit der folgenden Ereignisprozedur:
Private Sub Detailbereich_Print(Cancel As Integer, PrintCount As Integer)
Static Anzahl As Integer
If Anzahl < Me!AnzahlKopien Then
Me.NextRecord = False
Anzahl = Anzahl + 1
Else
Anzahl = 0
End If
End Sub
Die Prozedur enthält eine statische Variable, die die Anzahl der bereits gedruckten Kopien aufnimmt. Sollte die erforderliche Anzahl noch nicht erreicht worden sein, verhindert die Prozedur mittels NextRecord-Methode den Wechsel zum nächsten Datensatz. Der aktuelle Datensatz wird also erneut ausgedruckt. Sobald die erforderliche Anzahl erreicht ist, wird die Variable Anzahl wieder auf den Wert 0 gesetzt und der Wechsel zum nächsten Datensatz zugelassen.