Ein Kunde fragte neulich, warum ich nicht mal einen Beitrag darüber verfasse, wie man mit einem Thermodrucker beispielsweise Versandetiketten druckt. Also machen wir das einfach! Dieser Artikel zeigt am Beispiel des Brother-Druckers QL-700, wie man aus Access heraus Etiketten drucken kann.
Adressdaten vorbereiten
Für die Ausgabe von Etiketten benötigen wir einige Daten, zum Beispiel Adressdaten, sowie einen Bericht, der die Ausgabe der Daten formatiert. Die Adressdaten verwalten wir in der Tabelle tblAdressen, die mit Daten wie in Bild 1 aussieht.
Bild 1: Adressdaten für die Adressetiketten
Die Adressen sind bis auf einige Adressen ohne Firma vollständig, weshalb wir im Bericht zwei verschiedene Formate vorsehen wollen:
- Adressen mit Firma: Firma in der ersten Zeile, Anrede, Vorname und Nachname in der zweiten Zeile, Straße in der dritten und PLZ und Ort in der vierten Zeile.
- Adressen ohne Firma: Anrede in der ersten Zeile, Vorname und Nachname in der zweiten Zeile, Straße in der dritten und PLZ und Ort in der vierten Zeile.
Bericht erstellen
Um den Bericht zu erstellen, der in dem gewünschten Format auf Etiketten ausgedruckt werden soll, legen wir zunächst einen einfachen Bericht in der Entwurfsansicht an. Diesem weisen wir als Datensatzquelle die Tabelle tblAdressen zu. Nun könnten wir jedes der Felder einzeln in den Detailbereich des Berichtsentwurfs ziehen, aber wenn wir die Darstellung mit wahlweise Firma oder Anrede in der ersten Zeile realisieren wollen, ist ein einziges Textfeld praktischer.
Nachdem wir dieses hinzugefügt haben, entfernen wir zuerst das Beschriftungsfeld des Textfeldes und stellen dann seine Eigenschaft Steuerelementinhalt auf den folgenden Ausdruck ein:
=Wenn(IstNull([Firma]);[Anrede];[Firma]) & Zchn(13) & Zchn(10) & Wenn(IstNull([Firma]);Null;[Anrede])+" " & [Vorname] & " " & [Nachname] & Zchn(13) & Zchn(10) & [Strasse] & Zchn(13) & Zchn(10) & [PLZ] & " " & [Ort]
Der Berichtsentwurf sieht danach wie in Bild 2 aus.
Bild 2: Erster Entwurf des Berichts
Der Ausdruck prüft zu Beginn, ob das Feld Firma für den aktuellen Datensatz Null ist. Falls ja, wird zuerst das Feld Anrede ausgeben, sonst Firma. Zchn(13) & Zchn(10) ist ein Zeilenumbruch und entspricht der Konstanten vbCrLf.
Der Ausdruck für die zweite Zeile prüft wieder, ob Firma den Wert Null hat. Falls ja, gibt der Wenn-Ausdruck den Wert Null aus, falls nein, den Wert des Feldes Anrede. Warum geben wir den Wert Null aus und nicht einfach eine leere Zeichenkette Weil wir den Inhalt der Wenn-Bedingung per Plus-Zeichen (+) mit dem folgenden Teil “ “ & Vorname & “ “ & Nachname verknüpft haben. Und wenn der Wenn-Teil den Wert Null liefert, dann wird der komplette Ausdruck, der mit dem Plus-Zeichen verknüpft ist, zum Wert Null. Wenn die Anrede also in der zweiten Zeile nicht ausgegeben werden soll, weil sie schon in der ersten Zeile steht, würde dort sonst noch das Leerzeichen zwischen Anrede und dem Vorname erscheinen. Dies verhindern wir durch das Ausgeben von Null in dem Fall, dass die Anrede schon in der ersten Zeile ausgegeben wurde und die Verknüpfung mit dem Ausdruck “ “ durch ein Plus-Zeichen statt durch das Kaufmanns-Und (&).
Danach folgt noch eine weitere Zeile mit dem Wert des Feldes Strasse sowie in der letzten Zeile PLZ und Ort. Wechseln wir nun in die Seitenansicht, erhalten wir die Adressen wie in Bild 3.
Bild 3: Adressdaten in der Seitenansicht
Bericht an die Adressetiketten anpassen
Damit folgt der interessante Teil der Aufgabe: Wir wollen den Bericht so anpassen, dass jeweils eine Adresse je Seite in der Größe der Etiketten angezeigt wird. Dazu öffnen wir den Bericht in der Entwurfsansicht und wechseln im Ribbon zum Reiter Seite einrichten. Hier klicken Sie auf Seite einrichten, was den Dialog Seite einrichten öffnet. In diesem wechseln Sie zur Registerseite Seite. Hier finden Sie die Option Drucker für [Berichtsname]. Wählen Sie hier statt Standarddrucker die Option Spezieller Drucker aus und klicken Sie anschließend auf die Schaltfläche Drucker… (siehe Bild 4).
Bild 4: Der Dialog Seite einrichten
Auf der Seite zur Auswahl des Druckers selektieren Sie den gewünschten Drucker, in diesem Fall Brother QL-700 (siehe Bild 5). Bestätigen Sie die Auswahl mit einem Klick auf die Schaltfläche OK.
Bild 5: Dialog zum Auswählen des Druckers
Danach erscheinen im Dialog Seite einrichten unter Papier die für diesen Drucker verfügbaren Papiergrößen. Wir wählen 62mm x 100mm aus, da dies unseren Etiketten entspricht (siehe Bild 6). Außerdem stellen wir hier noch die Ausrichtung auf Querformat ein.
Bild 6: Auswahl der richtigen Etikettengröße
Feineinstellungen des Berichtsentwurfs
Damit geht es an das Finetuning des Berichts. Der Detailbereich darf nicht größer als 62mm hoch und 100mm breit sein, damit wir keine leeren Seiten ausgeben.
Die Höhe stellen wir für die Eigenschaft Höhe des Detailbereichs ein (siehe Bild 7).
Ende des frei verfügbaren Teil. Wenn Du mehr lesen möchtest, hole Dir ...
den kompletten Artikel im PDF-Format mit Beispieldatenbank
diesen und alle anderen Artikel mit dem Jahresabo