Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1444to1448
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

Listbox Daten verwenden

Listbox Daten verwenden
09.09.2015 12:40:00
Sven
HI zusammen,
nachdem mir schon viel geholfen wurde komme ich jetzt an einen Punkt den ich nicht verstehe und hoffe es kann jemand helfen.
Ich lasse eine Listbox mit einem Array aus einer Suche füllen.
Diese Daten werden über eine Funktion weiterverwendet - klappt.
Nun habe ich mit Hilfe von Werner (nochmal Danke) die Listbox über eine 2. Suche gefüllt. Nur funktioniert meine Function nun nicht mehr und gibt den Wert Null zurück.
Jedoch ist der Inhalt der Listbox bei beiden Suchen identisch. Einmal gehts und einmal nicht. Bei Bedarf lade ich die Mappe hoch (ist aber viel zusammengewuselter Code *peinlich*)
Füllen der Listbox mit Array (funktioniert, nur zum Verständnis)
Set rng = Worksheets("Tabelle2").Range("A:A").Find _
(xSuche, LookAt:=xlPart, LookIn:=xlValues)
If Not rng Is Nothing Then
With Worksheets("Tabelle2")
xErste = rng.Address(False, False)
y = True
Do Until xAdresse = xErste
ReDim Preserve arr(0 To 3, 0 To iRowU)
arr(0, iRowU) = .Cells(rng.Row, 1)
arr(1, iRowU) = .Cells(rng.Row, 2)
arr(2, iRowU) = .Cells(rng.Row, 3)
arr(3, iRowU) = .Cells(rng.Row, 4)
iRowU = iRowU + 1
Set rng = .Range("A:A").FindNext(After:=rng)
xAdresse = rng.Address(False, False)
Loop
xAdresse = ""
xErste = ""
End With
End If
If y = False Then
MsgBox "Der Suchbegriff wurde nicht gefunden!"
Suchfeld_1.SetFocus
Else
SSD_Suchen.ListBox1.Column = arr

Folgende Funktion wird über ein DblClick in Listbox1 ausgeführt:
Function fcRowSearch(ByVal SSD As String, ByVal OPN As String) As Integer
Dim liRow As Integer
With Sheets("Tabelle2")
For liRow = 1 To .Cells(.Rows.Count, 1).End(xlUp).Row
If SSD  "" Then
If SSD = .Range("A" & liRow).Value And _
CVar(SSD_Suchen.ListBox1.List(SSD_Suchen.ListBox1.ListIndex, 0)) = .Range("D" _
& liRow).Value Then
fcRowSearch = liRow
Exit Function
End If
End If
If OPN  "" Then
If CVar(OPN) = .Range("D" & liRow).Value Then
fcRowSearch = liRow
Exit Function
End If
End If
Next
End With
End Function

Lass ich nun die Listbox über eine 2. Suche (Auswahl aus autogefilterten Daten) füllen gibt die Function NULL zurück. So fülle ich die Listbox:
Set Bereich = Worksheets("tabelle2").Range("A4:BL1000").Resize(Worksheets("tabelle2"). _
autofilter.Range.Rows.Count - 1, 1)
For Each rngCell In Bereich
If rngCell.EntireRow.Hidden = False Then SSD_Suchen.ListBox1.AddItem rngCell.Value
If rngCell.EntireRow.Hidden = False Then SSD_Suchen.ListBox1.List(ListBox1.ListCount -  _
1, 1) = rngCell.Offset(0, 1).Value
If rngCell.EntireRow.Hidden = False Then SSD_Suchen.ListBox1.List(ListBox1.ListCount -  _
1, 2) = rngCell.Offset(0, 3).Value
Next
Vielleicht sieht ja jemand auf den ersten Blick wo der Fehler liegt.
Ich gehe davon aus das die Funktion mit den versteckten Zellen nicht zurecht kommt. Dazu haben ich den Autofilter wieder deaktiviert, aber die funktion kanns immer noch nicht.
Ein Tipp wäre schon super :)
Danke euch!
Gruß
Sven

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Listbox Daten verwenden
10.09.2015 12:14:23
fcs
Hallo Sven,
probiere es mal so. Das Problem ist wahrscheinlich, dass die Referenz auf die Listbox1 teilweise unvollständig ist. Die per Autofilter ausgeblendeten Zeilen bereiten normalerweise keine Probleme.
Gruß
Franz
Sub FillListbox_die_zweite()
Set Bereich = Worksheets("tabelle2").Range("A4").Resize(Worksheets("tabelle2"). _
AutoFilter.Range.Rows.Count - 1, 1)
With SSD_Suchen.ListBox1
.Clear
For Each rngCell In Bereich.Cells
If rngCell.EntireRow.Hidden = False Then
.AddItem rngCell.Value
.List(.ListCount - 1, 1) = rngCell.Offset(0, 1).Value
.List(.ListCount - 1, 2) = rngCell.Offset(0, 3).Value
End If
Next
End With
End Sub

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige