Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Letzter Suchwert ausgeben.

Forumthread: Letzter Suchwert ausgeben.

Letzter Suchwert ausgeben.
09.01.2021 17:10:30
Dani
Hallo Zusammen
Ist wahrscheinlich etwas kleines aber ich steh da doch an.
  • Set h = Bnz2.Find(b, Lookat:=xlPart)

  • Mit dieser Codezeile suche ich nach einer Nummer mit Zahlen welche noch eine Unternummerierung aufweisen kann. P 20-000 "Normal" P 20-000.01 " mit Unternumerierung"
    Die Code Zeile funktioniert. Jedoch wird "h" mit dem ersten Treffer definiert (Im Debugger gibt es mir auch an das es 2 Treffer gibt). Ich benötige jedoch den letzten Treffer um damit weiter zu arbeiten. (Damit ich die Nummerierung weiterführen kann)
    Finde leider kein Lösungen im Internet/Excelbuch/Hilfe.
    Danke für die Hilfe
    Gruss Dani
    Anzeige

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

    Betreff
    Datum
    Anwender
    Anzeige
    AW: Letzter Suchwert ausgeben.
    09.01.2021 17:18:28
    Hajo_Zi
    Hallo Dani,
    findnext bis nicht mehr gefunden
    Option Explicit
    Sub Find_mehrmals()
    '* H. Ziplies                                     *
    '* 29.03.2020                                     *
    '* erstellt von HajoZiplies@WEB.de     Spam       *
    '* http://Hajo-Excel.de
    Dim Rafound As Range
    Dim StAdresse As String
    With Worksheets("Projekte")
    Set Rafound = .Columns(4).find("Ha", .Range("D1"), , xlPart, , xlNext)
    ' xlPart enthalten
    ' xlWhole kompletter Vergleich
    If Not Rafound Is Nothing Then
    MsgBox Rafound.Address
    StAdresse = Rafound.Address             ' erste Adresse merken
    Do                                      ' Such wiederholen
    Set Rafound = .Columns(4).FindNext(Rafound)
    If Not Rafound Is Nothing Then
    If StAdresse = Rafound.Address Then
    Exit Do                     ' erstes Ergebniszelle
    Else
    MsgBox Rafound.Address
    End If
    End If
    Loop
    End If
    End With
    Set Rafound = Nothing
    End Sub
    

    Anzeige
    AW: Letzter Suchwert ausgeben.
    09.01.2021 20:24:36
    Dani
    Hallo Hajo
    Vielen Dank für deine Hilfe. Es tut sich was allerdings noch nicht das was ich gerne hätte xD
    Folgend mein Code angepasst an meinen bestehenden Code:
    With Worksheets("Projekte")
    Set h = .Columns(6).Find(b, .Range("F4"), , xlPart, , xlNext)
    ' xlPart enthalten
    ' xlWhole kompletter Vergleich
    If Not h Is Nothing Then
    StAdresse = h.Address             ' erste Adresse merken
    Do                                      ' Such wiederholen
    Set h = .Colums(6).FindNext(h)
    If Not h Is Nothing Then
    If StAdresse = h.Address Then
    Exit Do                     ' erstes Ergebniszelle
    Else
    End If
    End If
    Loop
    End If
    End With
    
    Mein Problem ist einerseits eine Fehlermeldung hier: "Set h = .Colums(6).FindNext(h)" Objekt unterstützt diese Eigenschaft/Methode nicht.
    Habe das dan versucht anderst zu lösen: "Set h = Bnz2.findNext(h)"
    Das würde gehen jedoch sucht es dann weiter.
    Sprich in der ersten Suche wird "O 21-002" gefunden, in der zweiten "O 21-002.01" und dann obwohl es keine weiteren Einträge hat wird wieder "O 21-002" gefunden...
    Kannst du mir sagen was ich falsch mache? (Zur Sicherheit habe ich dir die Datei angehängt)
    https://www.herber.de/bbs/user/142884.xlsm
    Vielen Dank und Gruss
    Dani
    Anzeige
    AW: Letzter Suchwert ausgeben.
    09.01.2021 20:32:03
    Werner
    Hallo,
    warum nicht einfach von hinten nach vorne suchen?
    Set h = .Columns(6).Find(what:=b, LookIn:=xlValues, LookAt:=xlPart, searchdirection:=xlPrevious)
    
    Gruß Werner
    AW: Letzter Suchwert ausgeben.
    10.01.2021 15:24:25
    Dani
    Hallo Werner
    Das ist eine sehr gute Idee. Habe ich auch so umgesetzt.
    Danke dir
    Gruss Dani
    Anzeige
    Gerne u. Danke für die Rückmeldung. o.w.T.
    10.01.2021 17:24:37
    Werner
    ;

    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