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

Mehrspaltige ListBox drucken

Forumthread: Mehrspaltige ListBox drucken

Mehrspaltige ListBox drucken
03.05.2008 12:52:21
edie
Hallo zusammen,
im Archiv habe ich einen Code gefunden der
die 1 Spalte einer ListBox druckt.
Wie lautet die Syntax, wenn man alle 9 Spalten
einer ListBox drucken möchte.

Private Sub cmdPrint_Click()
Dim Temp As Worksheet
Dim i As Integer
Dim iRow As Integer
On Error GoTo FEHLER
With Application
.ScreenUpdating = False
.DisplayAlerts = False
End With
iRow = 3
Set Temp = Worksheets.Add
With Temp
If ListBox1.ListIndex > 0 Then
For i = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(i) Then
Cells(iRow, 1) = ListBox1.List(i)
iRow = iRow + 1
End If
Next
Else
For i = 0 To ListBox1.ListCount - 1
Cells(i + 3, 1) = ListBox1.List(i)
Next
End If
.PrintOut
.Delete
End With
FEHLER:
With Application
.ScreenUpdating = True
.DisplayAlerts = True
End With
End Sub


Kan mir jemand dabei helfen?
Vielen Dank im Voraus.
Grüße

Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mehrspaltige ListBox drucken
03.05.2008 13:12:00
Daniel
HI
so

Private Sub cmdPrint_Click()
Dim Tmp As Worksheet
Set Temp = Worksheets.Add
With ListBox1
Tmp.Cells(1, 1).Resize(.ListCount, .ColumnCount) = .List
Tmp.Cells(1, 1).Resize(, .ColumnCount).EntireColumn.AutoFit
End With
Tmp.PrintOut
Tmp.Delete
End Sub


Gruß, Daniel

Anzeige
AW: Mehrspaltige ListBox drucken
03.05.2008 13:19:00
Gerd
Hi,
mit Option Explicit wäre das nicht passiert.
Ansonsten schöne Lösung.
mfg Gerd

AW: falscher thread?
03.05.2008 13:47:22
Daniel
gruß, Daniel

Nein, richtiger Thread
03.05.2008 14:18:36
Reinhard
Hallo Daniel,
schau mal auf Tmp und Temp :-)
Gruß
Reinhard

Anzeige
AW: Nein, richtiger Thread
03.05.2008 14:23:04
Daniel
Ups
stimmt, das mit dem Tmp hatte ich nachräglich eingebaut und dann nicht mehr getestet.
Gruß, Daniel

AW: korrektur
03.05.2008 13:46:28
Daniel
Hallo
hab grade gesehn, daß du ja nicht die ganze Listbox drucken willst, sondern nur die selektierten Zeilen.
dann gehts so:

Private Sub cmdPrint_Click()
Dim Temp As Worksheet
Dim i As Long, sp As Long
Dim iRow As Long
On Error GoTo FEHLER
With Application
.ScreenUpdating = False
.DisplayAlerts = False
End With
iRow = 3
Set Temp = Worksheets.Add
With Temp
If ListBox1.ListIndex > 0 Then '--- Selektierte Zeilen
For i = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(i) Then
 For sp = 1 To ListBox1.ColumnCount
.Cells(iRow, sp) = ListBox1.List(i, sp - 1)
Next
iRow = iRow + 1
End If
Next
Else '--- alle Zeilen
 .Cells(iRow, 1).Resize(ListBox1.ListCount, ListBox1.ColumnCount) = ListBox1.List _
_
End If
.PrintOut
.Delete
End With
FEHLER:
With Application
.ScreenUpdating = True
.DisplayAlerts = True
End With
End Sub


Gruß, Daniel

Anzeige
AW: korrektur
03.05.2008 14:02:00
edie
Hallo Daniel,
was soll ich sagen, einfach - Klasse!!!
Vielen Herzlichen Dank.
Grüße
;

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