AW: Listbox füllen mit Autofilter
21.12.2007 12:59:56
Erich
Hallo Gerhard,
ja, Kopieren in ein temp. Blatt ist eine Möglichkeit. Probier mal
Private Sub UserForm_initialize()
Dim wsTmp As Worksheet, lngZ As Long
Set wsTmp = Worksheets.Add 'später löschen, wenn nicht mehr gebraucht
With Worksheets("BPF")
lngZ = .Cells(.Rows.Count, 1).End(xlUp).Row
.Cells(1, 1).AutoFilter Field:=2, Criteria1:="BESTELLEN"
.Range(.Rows(1), .Rows(lngZ)).Copy wsTmp.Cells(1, 1)
End With
lngZ = Cells(Rows.Count, 1).End(xlUp).Row ' Anz. Zeilen in wsTmp
With ListBox1
.RowSource = wsTmp.Name & "!A2:N" & lngZ
.ColumnCount = 14
.ColumnHeads = True
End With
End Sub
Allerdings hast du dann nicht mehr deine Ur-Tabelle als RowSource,
musst also Änderungen per VBA in BPF eintragen.
Gefährlich war in deinem Code "Selection.AutoFilter ...":
Was, wenn im Blatt BPF zufällig eine Zelle außerhalb deiner Liste selektiert ist?
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort