Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
984to988
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
984to988
984to988
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Suche mit Find, nur am Zellenanfang

Suche mit Find, nur am Zellenanfang
21.06.2008 09:51:00
Werner
VBA-Level: mittelgut
Hallo liebe Forumsmitglieder!
Mit der Funktion "Find" kann man bekanntlich Zeichenketten (Strings) in einem Range finden. Nun möchte
ich, dass diese Funktion mir einige Zeichen am Anfang einer Zelle innerhalb eines Range sucht, auch wenn in der gleichen Zelle noch weitere Zeichen folgen. Bisher musste ich mir immer mit folgendem
behelfen:

Sub Suchen ()
Dim rng As Range
Dim Gesucht As String
Set rng = Range("A1:A100).Find(what:=Gesucht, lookat:=xlPart, MatchCase:=True)
End Sub


Der gesuchte Teilstring wird so zwar gefunden, jedoch leider nicht nur am Zellenanfang, sondern auch
innerhalb der Zelle. Ich möchte aber so suchen lassen, dass nur Teilstrings am Zellenanfang gefunden werden. (Wenn ich beispielsweise den String "Schul" suche, werden Zellen mit "Schulanfang", "Schule"
"Schulrat" usw. gefunden, aber auch Zellen mit "Grundschule", "Mittelschule", "Hauptschule" usw. Die letzteren drei sollen aber ausgeschlossen bleiben)
Weiß jemand Rat? Herzl. Dank im voraus!
Werner R.

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Suche mit Find, nur am Zellenanfang
21.06.2008 10:01:43
Hajo_Zi
Hallo Ferner,
mit Find kannst Du nur unterscheiden komplett oder enthalten. Bei enthalten it egal wo das Wort ist.
Vielleicht hilft Xlport ändern in xlWhole und suchen nach Dein_Wort*

Dank f. Hinweis
21.06.2008 10:22:11
Werner
Hallo Hajo_Zi!
Dank für deinen Hinweis! Ich werde es mal ausprobieren. Werner R.

Zusatz
21.06.2008 11:01:13
Werner
Hallo Freunde,
noch ein Zusatz zu meiner Frage:
Natürlich würde ich eie Lösung dieses Problems auch dann akzeptieren, wenn die Lösung
nicht über die Find-Anweisung geht. Bei der Vielfalt von Excel müsste es doch irgendeinen Weg geben.
Werner R.

Anzeige
AW: Zusatz
21.06.2008 11:32:00
Matthias
Hallo Werner,
wie Hajo schon sagte:

Sub Suchen()
Dim rng As Range
Dim Gesucht As String
Gesucht = "Schul*"
Set rng = Range("A1:A100").Find(what:=Gesucht, lookat:=xlWhole, MatchCase:=True)
If Not rng Is Nothing Then MsgBox "gefunden in Zeile " & rng.Row
End Sub


Gruß Matthias

Alles klar!
21.06.2008 11:51:06
Werner
Hallo Matthias G.!
herzlichen Dank f. den Code!! So ein Code sagt oft mehr aus als viele Worte!
Ich habe mein Excel auf einem anderen Computer installiert, deshalb kann
ich leider nicht alles gleich ausprobieren. Zudem hatte Hajo_Zi seinen Hinweis etwas unsicher formuliert. Aber da ihr ja beide gleicher Meinung seid, betrachte ich das Problem als geklärt. (Wenn ich es morgen od.
übermorgen ausprobiert habe u. auf Probleme stoßen sollte, würde ich mich zu diesem Thread noch
einmal melden.

Anzeige
gleiches Problem wieder aufgetaucht
22.06.2008 12:33:00
Werner
Hallo Matthias G.,
noch ein Zusatz: wenn ich in meinem Programm eurem Vorschlag gemaess einen Suchstring mit folgendem
"*" eingebe, sucht es trotzdem weiterhin den String auch innerhalb einer Zelle, nicht nur am Anfang.
Das "*" löst das Problem also nicht. Vielleicht gibt es gar keine Lösung, soll ja vorkommen.
Werner R.

AW: gleiches Problem wieder aufgetaucht
22.06.2008 20:37:32
Matthias
Hallo Werner,
und du hast bei LookAt:= sicher xlWhole statt xlPart verwendet?
Gruß Matthias

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige