UserForm + Listenbox + Spaltensuche
#1
Grüße liebe Community,

habe mir einen Code aus dem Internet - mit meinem gefährlichen Halbwissen zusammengebastelt der so aussieht:


Code:
istBox1.Clear
xSuche = ComboBox2.Value
If xSuche = "" Then
    MsgBox "Bitte erst einen Suchbegriff eingeben!", vbExclamation, "Achtung!"
    Exit Sub
End If
For iCounter = 1 To ThisWorkbook.Sheets.Count
    If Worksheets(iCounter).Name = ComboBox1.Value Then
        Set rng = Worksheets(iCounter).Cells.Find _
            (xSuche, lookat:=Suchart, LookIn:=xlValues)
        If Not rng Is Nothing Then
            With Worksheets(iCounter)
                xErste = rng.Address(False, False)
                y = True
                Do Until xAdresse = xErste
                    ReDim Preserve arr(0 To 7, 0 To iRowU)
                    arr(0, iRowU) = rng.Row
                    arr(1, iRowU) = .Cells(rng.Row, 1)  'dieser Array auch für das Listenfeld
                    arr(2, iRowU) = .Cells(rng.Row, 2)
                    arr(3, iRowU) = .Cells(rng.Row, 4)
                    arr(4, iRowU) = .Cells(rng.Row, 5)
                    arr(5, iRowU) = .Cells(rng.Row, 6)
                    arr(6, iRowU) = .Cells(rng.Row, 7)
                    arr(7, iRowU) = .Cells(rng.Row, 8)
                    iRowU = iRowU + 1
                    Set rng = .Cells.FindNext(after:=rng)
                    xAdresse = rng.Address(False, False)
                Loop
                xAdresse = ""
                xErste = ""
            End With
        End If
    End If
Next iCounter
If y = False Then
    MsgBox "Der Vorgang wurde nicht gefunden!"
Else
    ListBox1.Column = arr
End If
End Sub

Jetzt habe ich das Problem, dass er mir alle Ergebnisse aus dem Tabellenblatt mit dem Suchbegriff anzeigt, ich möchte aber nur, dass er mir beispielsweise nur bei der Spalte "B" den Suchbegriff findet und dann wiedergibt. Das Wiedergeben funktioniert, es liegt nur noch an der Spaltensuche.

Vielen Dank im Voraus für die Hilfe.  Blush

Gruß
Top
#2
Hallöchen,

Du hast ...Cells.Find... und musst das z.B. durch ...Columns(2).Find... ersetzen.

PS: Ich hab Deinen Beitrag aus den Beispielen ins Excelforum geschoben ...
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Top
#3
Vielen Dank, teste das morgen gleich. :)
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste