Anzeige
Archiv - Navigation
352to356
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
352to356
352to356
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Probleme mit einer Suchfunktion

Probleme mit einer Suchfunktion
19.12.2003 18:23:57
Dominik
Hallo,

ich bin noch sehr unerfahren in VBA und habe ein Problem mit einer Suchfunktion. Habe jetzt ewig damit rumgespielt und bekomms einfach nicht hin. Über eine Userform rufe ich eine Inputbox auf in der ich den Suchbefehl eingebe. Die Suche macht nun folgendes: Sie wechselt das Tabellenblatt und sucht in der Spalte B nach dem eingegebenen Begriff. Wird etwas in der Spalte B gefunden wird in einer MsgBox das angezeigt was in der selben Zeile in Spalte A steht mit der Frage ob ich weitersuchen möchte (falls es mehrere Treffer gibt). Klappt auch soweit alles wunderbar. Nur wenn ich in der Input-Box auf "Abbrechen" statt "Ok" klicke fragt er mich trotzdem ob ich noch weitersuchen möchte. Das soll natürlich nicht passieren... hier soll er das ganze komplett abbrechen. Kann mir vielleicht jemand weiterhelfen? Hier ist der dazugehörige Code:


Sub CommandButtonNameSuchen_Click()
Sheets("Tabelle1").Select
UserFormSuche.Hide
Dim Suchbegriff As Range, Suchtext$, Bereich$, Ausgang$
Dim ZuDurchsuchendeSpalte%, ZuZeigendeSpalte%, weiter%
ZuDurchsuchendeSpalte = 2
ZuZeigendeSpalte = 1
Suchtext = InputBox("Bitte geben Sie den zu suchenden Nachnamen ein!", "Suchtext")
'Das erste Mal suchen
Set Suchbegriff = Columns(ZuDurchsuchendeSpalte).Find(what:=Suchtext)
If Suchbegriff Is Nothing Then Exit Sub
weiter = MsgBox(Cells(Suchbegriff.Row, ZuZeigendeSpalte) & Chr(10) & "Soll weitergesucht werden?", vbYesNo + vbQuestion, Suchtext & " - Weitersuchen?")
If weiter = vbNo Then Exit Sub
'Übergabe der Zelladresse an Variablen, um eine Endlosschleife zu vermeiden
Bereich = Suchbegriff.Address
Ausgang = Bereich
'Schleife, bis alle gefundenen Begriffe verarbeitet wurden
Do While Suchbegriff Is Nothing = False
Set Suchbegriff = Columns(ZuDurchsuchendeSpalte).Find(what:=Suchtext, After:=Range(Ausgang))
If Suchbegriff.Address = Bereich Then Exit Sub
weiter = MsgBox(Cells(Suchbegriff.Row, ZuZeigendeSpalte) & Chr(10) & "Soll weitergesucht werden?", vbYesNo + vbQuestion, Suchtext & " - Weitersuchen?")
If weiter = vbNo Then Exit Sub
usgang = Suchbegriff.Address
Loop
End Sub



Danke schon im Vorraus,

Dominik

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Probleme mit einer Suchfunktion
19.12.2003 20:52:05
K.Rola
Hallo,

Suchtext = InputBox("Bitte geben Sie den zu suchenden Nachnamen ein!", "Suchtext")

If Suchtext = "" then exit sub

Gruß K.Rola
AW: Probleme mit einer Suchfunktion
20.12.2003 01:26:18
Dominik
Danke dir!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige