Listbox Auswahl Drucken in Excel
Schritt-für-Schritt-Anleitung
-
Öffne deine Excel-Datei und gehe zu dem Tabellenblatt, das die Listbox enthält.
-
Füge einen Button hinzu, um den Druckvorgang zu starten. Klicke mit der rechten Maustaste auf den Button und wähle „Code anzeigen“.
-
Kopiere den folgenden VBA-Code in das Codefenster:
Private Sub CommandButton1_Click()
Dim zeLB As Long, spLB As Long
Dim zeTB As Long, spTB As Long
Dim allesDrucken As Boolean
' Zellen leeren
Range("Druckvorlage!A2:P1000") = ""
' Querformat festlegen
Worksheets("Druckvorlage").PageSetup.Orientation = xlLandscape
' Drucker auswählen
Application.Dialogs(xlDialogPrinterSetup).Show
' Prüfen, ob alles gedruckt werden muss
For zeLB = 0 To ListBox1.ListCount - 1
allesDrucken = allesDrucken Or ListBox1.Selected(zeLB)
Next
zeTB = 1
' Selektierte Listboxeinträge in Zellen schreiben
For zeLB = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(zeLB) Or Not allesDrucken Then
zeTB = zeTB + 1
For spLB = 0 To ListBox1.ColumnCount - 1
Sheets("Druckvorlage").Cells(zeTB, spLB + 1) = ListBox1.List(zeLB, spLB)
Next
End If
Next
' Überschrift hinzufügen
Sheets("Druckvorlage").Cells(1, 1) = "Überschrift 1"
Sheets("Druckvorlage").Cells(1, 2) = "Überschrift 2"
Sheets("Druckvorlage").Visible = True
' Drucke Tabellenblatt
Worksheets("Druckvorlage").PrintOut
Sheets("Druckvorlage").Visible = False
End Sub
-
Ändere den Code, um die Überschriften und die Mittelausrichtung hinzuzufügen. Setze die Formatierungen für die Tabelle nach dem Drucken, um die Lesbarkeit zu verbessern.
Häufige Fehler und Lösungen
Alternative Methoden
Wenn Du eine einfache Lösung ohne VBA suchst, kannst Du die Daten manuell kopieren und in ein neues Tabellenblatt einfügen. Formatierungen wie Farben und Überschriften lassen sich dann einfacher anpassen. Eine weitere Möglichkeit ist die Verwendung von Excel-Tabellen, die automatisch das Drucklayout anpassen.
Praktische Beispiele
Hier ist ein Beispiel, wie Du eine Listbox mit Daten füllen kannst:
-
Erstelle eine Listbox auf deinem Arbeitsblatt.
-
Füge einige Daten in die Listbox ein, beispielsweise aus einer Datenquelle:
Private Sub UserForm_Initialize()
ListBox1.AddItem "Eintrag 1"
ListBox1.AddItem "Eintrag 2"
ListBox1.AddItem "Eintrag 3"
End Sub
-
Nutze den oben beschriebenen Druckcode, um die Auswahl zu drucken.
Tipps für Profis
- Druckbereich festlegen: Stelle sicher, dass der Druckbereich richtig gesetzt ist, um nur die benötigten Daten auszudrucken.
- Benutzerdefinierte Formatierungen: Verwende VBA, um benutzerdefinierte Formatierungen vor dem Drucken anzuwenden.
- Automatisierung: Überlege, ob Du den Druckvorgang automatisieren kannst, um Zeit zu sparen.
FAQ: Häufige Fragen
1. Wie kann ich die Listbox in ein anderes Blatt übertragen?
Du kannst die Daten der Listbox ganz einfach in ein anderes Blatt kopieren, indem Du den Zielbereich im Code anpasst.
2. Was muss ich tun, wenn mein Drucker nicht erkannt wird?
Stelle sicher, dass der Druckertreiber installiert ist und der Drucker korrekt mit deinem Computer verbunden ist. Du kannst auch versuchen, den Drucker neu zu starten.
3. Kann ich mehrere Listboxen gleichzeitig drucken?
Ja, Du kannst den Code anpassen, um die Auswahl aus mehreren Listboxen in einem einzigen Druckvorgang zu kombinieren. Achte darauf, die Daten in die Zellen zu schreiben, bevor Du den Druckbefehl ausführst.