Fehler in der Suchroutine
#1
Hallo Gemeinde,

da hab ich mir für ein Projekt eine Suchroutine gebastelt, die in einer Tabelle nacheinander den jeweiligen Suchbegriff in der entsprechenden Zelle markieren soll. Leider tut sie das nicht und ich finde den Fehler nicht! :@ :@ :@ 

Ein entsprechendes Musterschema mit dem original VBA-Code häge ich hier an.
Suche ich nach "Tür", so wird die erste Zeile des Suchbereiches ausgelassen, suche ich dann dagegen nach "Zimmer" wird mir ein Fundort übersprungen - ich bin völlig ratlos! Nach meiner Logik sollte es eigentlich richtig funktionieren, aber .....
Und wenn der Suchbegriff der letzten Zeile gesucht und gefunden wird, geht es in eine Endlosschleife - hhmmm???


Wer kann mir helfen?


Angehängte Dateien
.xlsm   Mustersuche.xlsm (Größe: 33,42 KB / Downloads: 6)
[Bild: attachment-190.gif]
Gruß Günter
aus der Helden-, Messe-, Musik-, Buch-, Universitäts- und Autostadt Leipzig
Top
#2
Hallo Günter,

so gehts:


.xlsm   Mustersuche.xlsm (Größe: 38,44 KB / Downloads: 4)
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Top
#3
Hallo Edgar,

das attachment=3726 sagt mir garnichts? Dodgy Dodgy 

Hast du vergessen, die Datei anzuhängen?
[Bild: attachment-190.gif]
Gruß Günter
aus der Helden-, Messe-, Musik-, Buch-, Universitäts- und Autostadt Leipzig
Top
#4
korrigiert
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Top
#5
Hallo Edgar,

vielen Dank, das funktioniert - muss ich recherieren, was da so anders als bei mir ist!
Allerdings beginnst du bereits in Zeile 7 zu suchen, obwohl doch der Suchbereich erst ab Zeile 8 losgeht - warum ist das so?
[Bild: attachment-190.gif]
Gruß Günter
aus der Helden-, Messe-, Musik-, Buch-, Universitäts- und Autostadt Leipzig
Top
#6
(31.12.2015, 20:27)Glausius schrieb: Hallo Edgar,

vielen Dank, das funktioniert - muss ich recherieren, was da so anders als bei mir ist!
Allerdings beginnst du bereits in Zeile 7 zu suchen, obwohl doch der Suchbereich erst ab Zeile 8 losgeht - warum ist das so?
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Top
#7
Hallo Günter,

ich hoffe, Du nimmst auch meine Antwort. Das liegt an dem Parameter After. Wenn der nicht angegeben ist, wie es hier der Fall ist, wird nach der linken oberen Zelle mit dem Suchen begonnen. Siehe auch Auszug aus der OH

Zitat:Gibt die Zelle an, nach der mit der Suche begonnen werden soll. Dies entspricht der Position der aktiven Zelle, wenn eine Suche über die Benutzeroberfläche ausgeführt wird. Beachten Sie, dass After eine einzelne Zelle im Bereich darstellen muss. Beachten Sie zudem, dass die Suche hinter dieser Zelle beginnt; die angegebene Zelle wird also erst durchsucht, wenn der Suchlauf zur Ausgangszelle zurückkehrt. Wird das Argument nicht angegeben, stellt die obere linke Zelle des Bereichs den Ausgangspunkt für die Suche dar.

Edgar hat dadruch, das er eine Zeile weiter oben beginnt den Suchbereich vergrößert und er findet somit den ersten Treffer auch in der Zeile 8.

Nachtrag: Oder setze den Parameter auf die letzte, rechte Zelle des Suchbereichs, so wie ich es im Code geändert habe.

Code:
Sub Suchen_aufrufen()
    loLetzte = ActiveSheet.Cells(Rows.Count, 4).End(xlUp).Row
    gesucht = ""
    i = 0
    Range("D7").Select
    Suchen.Show
    If Flag = False Then
        ActiveSheet.CommandButton2.Caption = "Suche"
        Exit Sub
    End If
    With ActiveSheet.Range("D8:D" & loLetzte)
        Set Gefunden = .Find(gesucht, after:=Range("D" & loletze).Row, LookAt:=xlPart, LookIn:=xlValues)
        If Gefunden Is Nothing Then
        nichts_gefunden
        Exit Sub
        Else
        loZeile = Gefunden.Row
        Set rng = Range(Gefunden.Address)
        rng.Select
        End If
        
    End With
    ActiveSheet.CommandButton2.Caption = "weiter suchen"
    Art = True
End Sub
Gruß Stefan
Win 10 / Office 2016
Top
#8
Hallo,

Direktantwort vom Handy funktioniert schon mal nicht. Ansonsten hat Stefan schon alles gesagt.
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Top
#9
Hallöchen,
Test.
Das ist eine Direktamtwort vom Handy.
(31.12.2015, 20:44)BoskoBiati schrieb: Hallo,

Direktantwort vom Handy funktioniert schon mal nicht. Ansonsten hat Stefan schon alles gesagt.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Top
#10
Hallo André,

liegt wohl an meinem Handy.
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Top


Gehe zu:


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