Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1188to1192
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

mehrspaltige listbox
fritz
Hallo,
ich lese mit folgendem code welchen ich vom forum erhalten habe daten in eine listbox welche sich in einer userform befindet ein. ich würde jetzt gerne aber auch noch die spalte e,f,und g einlesen.
kann mir jemand sagen wie ich den code umändern muss?
danke


Dim iRow As Integer
Dim rngCell As Range
Dim arr() As Variant
'.....................................................
'gefilterte listbox
With ListBox1
' Inhalt löschen, ist bei Aufruf eigentlich überflüssig, nicht jedoch bei UF_Activate
.Clear
' Spalten auf 3 setzen
.ColumnCount = 4
' Array redimensionieren und einlesen
End With
With Sheets("Arbeitszeiten")
For Each rngCell In .UsedRange.Columns(1).SpecialCells(xlVisible)
If rngCell.Row > 1 Then
ReDim Preserve arr(0 To 3, 0 To iRow)
arr(0, iRow) = .Cells(rngCell.Row, 1)
arr(1, iRow) = .Cells(rngCell.Row, 2)
arr(2, iRow) = .Cells(rngCell.Row, 3)
arr(3, iRow) = .Cells(rngCell.Row, 4)
iRow = iRow + 1
End If
Next rngCell
End With
' Zuweisen
ListBox1.Column = arr

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

Betreff
Benutzer
Anzeige
AW: mehrspaltige listbox
11.12.2010 13:21:06
Gerd
Hallo Fritz!
Private Sub XXXXX()
Dim iRow As Integer
Dim rngCell As Range
Dim arr() As Variant
'gefilterte listbox
With ListBox1
' Inhalt löschen
.Clear
' Spalten auf 7 setzen
.ColumnCount = 7
End With
' Array redimensionieren und einlesen
With Sheets("Arbeitszeiten")
For Each rngCell In .UsedRange.Columns(1).SpecialCells(xlVisible)
If rngCell.Row > 1 Then
ReDim Preserve arr(0 To 6, 0 To iRow)
arr(0, iRow) = .Cells(rngCell.Row, 1)
arr(1, iRow) = .Cells(rngCell.Row, 2)
arr(2, iRow) = .Cells(rngCell.Row, 3)
arr(3, iRow) = .Cells(rngCell.Row, 4)
arr(4, iRow) = .Cells(rngCell.Row, 5)
arr(5, iRow) = .Cells(rngCell.Row, 6)
arr(6, iRow) = .Cells(rngCell.Row, 7)
iRow = iRow + 1
End If
Next rngCell
End With
' Zuweisen
ListBox1.Column = arr
End Sub
Gruß Gerd
Anzeige
AW: mehrspaltige listbox
11.12.2010 14:00:16
fritz
Danke Gerd funktioniert super
habe aber noch ein kleines problem wenn die spalte die ich einlese leer ist bekomme ich eine fehlermeldung und zwar hier


' Zuweisen
ListBox1.Column = arr
kann man das irgendwie umgehen
danke
AW: mehrspaltige listbox
11.12.2010 18:01:35
Gerd
Hallo Fritz,
bei weniger als 16385 Zeilen
statt:
' Zuweisen
ListBox1.Column = arr
kannst Du:
ListBox1.List= Worksheetfunction.Transpose(arr)
nehmen.
Gruß Gerd
AW: mehrspaltige listbox
11.12.2010 20:49:31
fritz
Hallo Gerd,
ich hab leider trotz des geänderten befehls noch immer den fehler
lg
AW: mehrspaltige listbox
11.12.2010 21:04:23
Gerd
Hallo Fritz!
Welche der Spalten A:G im Blatt "Arbeitszeiten" ist leer, wenn der Fehler auftritt?
Gruß Gerd
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige