Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1808to1812
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

mehrspaltige Listbox komplett in Tabelle

mehrspaltige Listbox komplett in Tabelle
06.02.2021 13:40:11
Peter
Hallo,
habe leider ein Problem. Ich öffne eine Excel-Datei und füge den Inhalt einer Tabelle in die ListBox2 ein.
Nun möchte ich den gesamten Eintrag der ListBox2 ausdrucken.
Die ListBox2 fülle ich mit:

Sub ListBox2_fuellen()
Dim wbFremd As String
Dim wksTB1 As String
Dim Zeile%  'erforderlich für ListBox1
wbFremd = TextBox1.Value
wksTB1 = "Tabelle1"
'Anfang ListBox1 füllen
With ListBox2
.Clear
Zeile = Workbooks(wbFremd).Sheets(wksTB1).Cells(Rows.Count, 1).End(xlUp).Row
.RowSource = Workbooks(wbFremd).Sheets(wksTB1).Range("A1:H" & Zeile).Address(external:= _
True)
.ColumnHeads = False
.ColumnCount = 7
.ColumnWidths = "3,0cm;4,1cm;2,5cm;3,1cm;2,0cm;2,0cm;2,0cm"
'.ListIndex = Zeile - 1 'markiert die letzte Zeile nicht erforderlich
End With
'Ende ListBox1 füllen
End Sub
Könnt ihr mir bitte hierbei helfen.
Es steht mir eine Tabelle Namens "Ausdrucktabelle" zur Verfügung, sofern die Daten der ListBox2 hierzu in eine Tabelle eingefügt werden müssen.
Gruss
Peter

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: mehrspaltige Listbox komplett in Tabelle
06.02.2021 13:56:58
Beverly
Hi Peter,
weshalb druckst du nicht einfach den Zellbereich mit deinen Daten aus, die du in die ListBox einfügst?


AW: mehrspaltige Listbox komplett in Tabelle
06.02.2021 13:58:03
Nepumuk
Hallo Peter,
warum nicht einfach so:
Workbooks(wbFremd).Sheets(wksTB1).Range("A1:H" & Zeile).PrintOut
Gruß
Nepumuk
AW: mehrspaltige Listbox komplett in Tabelle
06.02.2021 14:03:44
Piet
Hallo Peter
du hast die Lösung selbst vorgegeben, siehst sie aber offenbar nicht, weil sie ZU einfach ist!
Mit ".RowSource" hast du den Tabellenbereich festgelgt, der in der ListBox erscheint. Zum drucken kannst du diesen Bereich einfach ins Drıckblatt kopieren. Das ist alles.
Sub Listenfeld_Bereich_kopieren()
^Code Ausschnitt zum Listenfeld Bereich kopieren
Zeile = Workbooks(wbFremd).Sheets(wksTB1).Cells(Rows.Count, 1).End(xlUp).Row
'Kopiere den Listenfeld Bereich direkt aus der Ursprungs Tabelle, da stehen sie ja drin!
Workbooks(wbFremd).Sheets(wksTB1).Range("A1:H" & Zeile).Copy
'Kopiere den Datensatz an die richtige Zelle im Druckblatt.
'** xlPastAll kopiert alles, auch Formate und Rahmen, xşPastValues kopiert nur die  _
Werte
Workbooks(wbFremd).Sheets(wksTB1).Range("A1").PasteSpecial xlPasteAll  'oder  _
xlPasteValues
'hşer kommt dein Drucker Code .....
End Sub
mfg Piet
Anzeige
AW: mehrspaltige Listbox komplett in Tabelle
06.02.2021 14:36:57
fcs
Hallo Peter,
hier ein Makro. Es werden aber keine Formate übertragen.
Hier musst du ggf. Zahlenformate der Spalten um Ausdruck-Blatt anpassen/ergänzen.
LG
Franz
Sub prcListbox2_drucken()
Dim wksDruck As Worksheet
Dim Zeile As Long, Spalte As Long
Dim iItem As Integer, spaBox
Dim zeiStart As Long
Set wksDruck = Worksheets("Ausdrucktabelle")
With wksDruck
zeiStart = 2 ' 1. Zeile in die Daten aus listbox eingetragen werden sollen
Zeile = .UsedRange.Row + .UsedRange.Rows.Count - 1
'Altdaten löschen
If Zeile >= zeiStart Then
.Range(.Rows(zeiStart), .Rows(Zeile)).ClearContents
End If
End With
With ListBox2
Zeile = zeiStart
For iItem = 0 To .ListCount - 1
Spalte = 1
For spaBox = 0 To .ColumnCount - 1
wksDruck.Cells(Zeile, Spalte).Value = .List(iItem, spaBox)
Spalte = Spalte + 1
Next
Zeile = Zeile + 1
Next
End With
End Sub

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige