Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Listbox füllen

Forumthread: Listbox füllen

Listbox füllen
27.11.2023 08:45:58
Daniel Eberhard
Guten Tag
Ich möchte eine Listbox mit mehr als 10 Spalten befüllen.
Mit meinem Code funktioniert es fast. Leider habe ich in der Listbox nur die letzte Zeile angezeigt. Was mache ich falsch?

Besten Dank für Eure Hilfe.

Freundliche Grüsse Daniel Eberhard



Private Sub UserForm_Initialize()

Dim Zeile As Long
Dim i As Long
Dim varData()
Dim AnzahlZeile As Integer
Dim ZList As Integer

AnzahlZeile = Tabelle1.Cells(Rows.Count, 1).End(xlUp).Row

With Me.ListBox1
.Clear
.ColumnCount = 13
.ColumnWidths = "120;120;50;50;50;20;120;50;50;50"
.Font.Size = 10
End With

For Zeile = 2 To AnzahlZeile
For ZList = 0 To AnzahlZeile - 1

ReDim varData(AnzahlZeile - 1, 12)

varData(ZList, 0) = Tabelle1.Cells(Zeile, 1).Value
varData(ZList, 1) = Tabelle1.Cells(Zeile, 2).Value
varData(ZList, 2) = Tabelle1.Cells(Zeile, 3).Value
varData(ZList, 3) = Tabelle1.Cells(Zeile, 4).Value
varData(ZList, 4) = Tabelle1.Cells(Zeile, 5).Value
varData(ZList, 5) = Tabelle1.Cells(Zeile, 6).Value
varData(ZList, 6) = Tabelle1.Cells(Zeile, 7).Value
varData(ZList, 7) = Tabelle1.Cells(Zeile, 8).Value
varData(ZList, 8) = Tabelle1.Cells(Zeile, 9).Value
varData(ZList, 9) = Tabelle1.Cells(Zeile, 10).Value
varData(ZList, 10) = Tabelle1.Cells(Zeile, 11).Value
varData(ZList, 11) = Tabelle1.Cells(Zeile, 12).Value
varData(ZList, 12) = Tabelle1.Cells(Zeile, 13).Address
Me.ListBox1.List = varData
Next ZList
Next Zeile
End Sub


Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Listbox füllen
27.11.2023 09:07:39
Alwin Weisangler
Hallo Erberhard,

einfach so:


varData.List = Tabelle1.Range("A1:N" & Tabelle1.Cells(Rows.Count, 1).End(xlUp).Row).Value


Gruß Uwe
AW: Listbox füllen
27.11.2023 09:16:20
Alwin Weisangler
Hallo Daniel,

ich hatte übersehen, dass du in ein Array laden willst.
Ins Array beispielhaft so:


arrData = Tabelle1.Range("A1:M" & Tabelle1.Cells(Rows.Count, 1).End(xlUp).Row).Value


direkt in die Listbox so:


ListBox1.List = Tabelle1.Range("A1:M" & Tabelle1.Cells(Rows.Count, 1).End(xlUp).Row).Value


Gruß Uwe
Anzeige
AW: Listbox füllen
27.11.2023 09:37:03
Alwin Weisangler
dann so:



Dim arrData()
arrData = Tabelle1.Range("A1:L" & Tabelle1.Cells(Rows.Count, 1).End(xlUp).Row).Value
ReDim Preserve arrData(1 To UBound(arrData), 1 To 13)
For i = 1 To UBound(arrData)
arrData(i, 13) = Tabelle1.Cells(i, 13).Address
Next i


Gruß Uwe
Anzeige
AW: Listbox füllen
27.11.2023 09:20:03
Daniel Eberhard
Hallo Uwe
Vielen Dank für dein Vorschlag. Ich möchte aber in der letzten Spalte dass es mir die Adresse der jeweiligen Zeilen anzeigt.
Gruss Daniel Eberhard



varData(ZList, 12) = Tabelle1.Cells(Zeile, 13).Address
AW: Listbox füllen
27.11.2023 10:15:47
onur
" dass es mir die Adresse der jeweiligen Zeilen anzeigt. " ?
Das tut es, wenn du in diese Spalte eine entsprechende Formel schreibst. z.B.
=ADRESSE(ZEILE();SPALTE())
Anzeige
AW: Listbox füllen
27.11.2023 10:27:45
Alwin Weisangler
@ Onur
ja das ist sowieso sinnvoller. Aber aus seiner Bemerkung heraus, wollte er dies wohl mit VBA.
Mir ist unklar warum ausgerechnet die Zelladresse. Die Zeilennummer ist ausreichend falls sortiert oder gefiltert wird und dann nach Änderungen der Werte in die Tabelle geschrieben werden soll.

Gruß Uwe
Anzeige
AW: Listbox füllen
27.11.2023 10:30:25
onur
Sinn & Zweck zu hinterfragen habe ich mir abgewöhnt. :)
;

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