Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Inhalt einer ListBox drucken

Inhalt einer ListBox drucken
17.03.2009 09:50:41
Josef
Hallo!
Ist es bitte möglich, den Inhalt einer mehrspaltigen Listbox in einer UF, also auch den nichtsichtbaren Teil auszudrucken?
Wenn ja, wie würde hier bitte eine Lösung lauten?
Danke
Josef
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Inhalt einer ListBox drucken
17.03.2009 10:17:31
Tino
Hallo,
wir könnten ein leeres Blatt erstellen,
die Daten einfügen, dieses Baltt drucken und am Schluss wieder löschen.
Private Sub CommandButton1_Click()
Dim PrintTab As Worksheet
Dim myAr

myAr = ListBox1.List
Set PrintTab = Worksheets.Add

PrintTab.Range("A1").Resize(Ubound(myAr, 1) + 1, Ubound(myAr, 2)) = myAr
PrintTab.Cells.EntireColumn.AutoFit
PrintTab.PrintOut

Application.DisplayAlerts = False
 PrintTab.Delete
Application.DisplayAlerts = True
End Sub


Gruß Tino

Anzeige
AW: Inhalt einer ListBox drucken
18.03.2009 06:51:01
Josef
Hallo Tino!
Danke für Deine Antwort und Deine Hilfe.
Würde alles bestens klappen.
Ich hätte dazu bitte noch eine Frage:
Wie könnte ich bitte erreichen, dass der Ausdruck im Querformat erfolgt?
Danke
Josef
AW: Inhalt einer ListBox drucken
18.03.2009 14:36:40
Gerd
Hi,
richte die Seite entsprechend ein und lass dabei den Makrorekorder laufen.
mfg Gerd
Anzeige
AW: Inhalt einer ListBox drucken
18.03.2009 14:54:54
Tino
Hallo,

PrintTab.PageSetup.Orientation = xlLandscape


'Gegenstück


PrintTab.PageSetup.Orientation = xlPortrait


Gruß Tino

AW: Inhalt einer ListBox drucken
19.03.2009 12:16:22
Josef
Hallo Tino!
Danke für Deine Antwort und Deine Hilfe.
Jetzt passt alles.
Josef
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Inhalt einer ListBox drucken in Excel


Schritt-für-Schritt-Anleitung

Um den Inhalt einer mehrspaltigen ListBox in Excel zu drucken, kannst du folgenden VBA-Code verwenden. Dieser Code erstellt ein neues Arbeitsblatt, überträgt die Daten der ListBox und druckt das Blatt anschließend aus.

  1. Öffne den Visual Basic for Applications (VBA) Editor (drücke ALT + F11).

  2. Füge einen neuen Modul hinzu (Einfügen > Modul).

  3. Kopiere den folgenden VBA-Code in das Modul:

    Private Sub CommandButton1_Click()
       Dim PrintTab As Worksheet
       Dim myAr
    
       myAr = ListBox1.List
       Set PrintTab = Worksheets.Add
    
       PrintTab.Range("A1").Resize(Ubound(myAr, 1) + 1, Ubound(myAr, 2)) = myAr
       PrintTab.Cells.EntireColumn.AutoFit
       PrintTab.PrintOut
    
       Application.DisplayAlerts = False
       PrintTab.Delete
       Application.DisplayAlerts = True
    End Sub
  4. Schließe den VBA-Editor und teste den Code, indem du auf die Schaltfläche klickst, die den Makro ausführt.


Häufige Fehler und Lösungen

Fehler: Der Druck erfolgt nicht, weil die ListBox leer ist.
Lösung: Stelle sicher, dass die ListBox vor dem Drucken mit Daten gefüllt ist.

Fehler: Der Druck erfolgt im Hochformat, obwohl Querformat gewünscht ist.
Lösung: Füge den folgenden Code vor dem PrintOut-Befehl hinzu, um das Querformat einzustellen:

PrintTab.PageSetup.Orientation = xlLandscape

Alternative Methoden

Eine weitere Möglichkeit ist die Verwendung des Makrorekorders, um die Druckeinstellungen manuell zu erstellen und den generierten Code anzupassen.

  1. Starte den Makrorekorder (Entwicklertools > Makro aufzeichnen).
  2. Stelle die Seite auf Querformat ein und drucke das Arbeitsblatt.
  3. Stoppe die Aufzeichnung und passe den generierten Code an, um die ListBox-Daten einzufügen.

Praktische Beispiele

Angenommen, du hast eine ListBox mit den folgenden Daten:

Name Alter Stadt
Max 25 Berlin
Anna 30 Hamburg
Tom 22 München

Mit dem oben genannten VBA-Code wird ein neues Arbeitsblatt erstellt und die Daten wie folgt gedruckt:

| Name | Alter | Stadt   |
|------|-------|---------|
| Max  | 25    | Berlin  |
| Anna | 30    | Hamburg |
| Tom  | 22    | München |

Tipps für Profis

  • Nutze Application.ScreenUpdating = False, um die Bildschirmaktualisierung während der Ausführung des Makros zu deaktivieren. Dies kann die Ausführungsgeschwindigkeit erhöhen.

  • Experimentiere mit der Formatierung der Zellen auf dem neuen Arbeitsblatt, um das Layout des Ausdrucks zu optimieren. Beispiel:

    With PrintTab.Range("A1:C1")
      .Font.Bold = True
      .Interior.Color = RGB(200, 200, 200)
    End With

FAQ: Häufige Fragen

1. Wie kann ich sicherstellen, dass alle Daten der ListBox gedruckt werden?
Achte darauf, dass die ListBox vollständig gefüllt ist und dass du die richtigen Dimensionen für das Zielarbeitsblatt im Code angibst.

2. Kann ich den Hintergrund des Drucks anpassen?
Ja, indem du zusätzliche Formatierungsbefehle im VBA-Code hinzufügst. Du kannst beispielsweise die Hintergrundfarbe der Zellen ändern, bevor du druckst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige