Applies ToAccess für Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Gibt einen Wert des Typs Variant (Long) zurück, der die Position des ersten Auftretens einer Zeichenfolge innerhalb einer anderen Zeichenfolge angibt.

Hier sind einige Beispiele

Syntax

InStr ([Anfang, ] Zeichenfolge1, Zeichenfolge2 [, Vergleich ] )

Die Syntax der InStr-Funktion weist die folgenden Argumente auf:

Argument

Beschreibung

Anfang

Optional. Numerischer Ausdruck, der die Anfangsposition für jede Suche festlegt. Fehlt dieses Argument, beginnt die Suche an der ersten Zeichenposition. Enthält Anfang den Nullwert, tritt ein Fehler auf. Das Argument Anfang ist erforderlich, wenn Vergleich angegeben ist.

Zeichenfolge1

Erforderlich. Zeichenfolgenausdruck, der durchsucht wird.

Zeichenfolge2

Erforderlich. Zeichenfolgenausdruck, nach dem gesucht wird.

Vergleich

Optional. Gibt den Typ des Zeichenfolgenvergleichs an. Enthält Vergleich den Nullwert, tritt ein Fehler auf. Ist Vergleich nicht angegeben, bestimmt die Einstellung von OptionCompare den Typ des Vergleichs. Geben Sie eine gültige LCID (LocaleID) an, damit gebietsschemaspezifische Regeln im Vergleich verwendet werden.

Tipp: Der Ausdrucks-Generator verfügt über IntelliSense, sodass Sie sehen können, welche Argumente Ihr Ausdruck benötigt.

Einstellungen

Die Einstellungen für das Argument Zeichenvergleich lauten:

Konstante

Wert

Beschreibung

vbUseCompareOption

-1

Verwendet für einen Vergleich die Einstellung der Option Compare-Anweisung.

vbBinaryCompare

0

Führt einen binären Vergleich durch.

vbTextCompare

1

Führt einen Textvergleich durch.

Rückgabewerte

Wenn

InStr-Rückgabe

Zeichenfolge1 hat Länge 0 (null)

0

Zeichenfolge1 ist Nullwert

Null

Zeichenfolge2 hat Länge 0 (null)

Anfang

Zeichenfolge2 ist Nullwert

Null

Zeichenfolge2 nicht gefunden

0

Zeichenfolge2 in Zeichenfolge1 gefunden

Die Position, an der eine Übereinstimmung gefunden wurde

Anfang > Zeichenfolge2

0

Hinweise

Die InStrB-Funktion wird mit Bytedaten verwendet, die in einer Zeichenfolge enthalten sind. Statt die Zeichenposition zurückzugeben, an der eine Zeichenfolge erstmals innerhalb einer anderen auftritt, gibt InStrB die Byteposition zurück.

Beispiele

Verwenden der InStr-Funktion in einem Ausdruck    Sie können InStr überall verwenden, wo Ausdrücke zulässig sind. Wenn Sie beispielsweise die Position des ersten Punkts (.) in einem Feld ermitteln möchten, das IP-Adressen enthält (Feldname ist "IPAddress"), können Sie InStr wie folgt zum Suchen verwenden:

InStr(1,[IPAddress],".")

Die InStr-Funktion wertet jeden Wert im Feld "IPAddress" aus und gibt die Position des ersten Punkts zurück. Daher gibt die Funktion, wenn der erste Teil des IP-Adresse gleich 10.ist, den Wert "3" zurück.

Sie können dann weitere Funktionen verwenden, die die Ausgabe der InStr-Funktion verarbeiten, um den Teil der IP-Adresse zu extrahieren, die vor dem ersten Punkt steht. Beispielsweise so:

Left([IPAddress],(InStr(1,[IPAddress],".")-1))

In diesem Beispiel gibt InStr(1,[IPAddress],".") die Position des ersten Punkts zurück. Durch Subtrahieren von 1 wird ermittelt, wie viele Zeichen vor dem ersten Punkt stehen (in diesem Fall 2). Die Left-Funktion extrahiert dann die entsprechende Anzahl Zeichen aus dem linken Teil des Felds "IPAddress", so dass sie den Wert "10" zurückgibt.

Verwenden von InStr in VBA-Code    

Hinweis: Die folgenden Beispiele zeigen die Verwendung dieser Funktion in einem VBA-Modul (Visual Basic for Applications).

In diesem Beispiel wird die InStr-Funktion verwendet, um die Position zurückzugeben, an der eine Zeichenfolge erstmals innerhalb einer anderen Zeichenfolge auftritt.

Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP"    ' String to search in.
SearchChar = "P"    ' Search for "P".
' A textual comparison starting at position 4. Returns 6.
MyPos = Instr(4, SearchString, SearchChar, 1)    
' A binary comparison starting at position 1. Returns 9.
MyPos = Instr(1, SearchString, SearchChar, 0)
' Comparison is binary by default
' (last argument is omitted).
MyPos = Instr(SearchString, SearchChar)    ' Returns 9.
MyPos = Instr(1, SearchString, "W")    ' Returns 0.

Siehe auch

Zeichenfolgenfunktionen und ihre Verwendung

Benötigen Sie weitere Hilfe?

Möchten Sie weitere Optionen?

Erkunden Sie die Abonnementvorteile, durchsuchen Sie Trainingskurse, erfahren Sie, wie Sie Ihr Gerät schützen und vieles mehr.

In den Communities können Sie Fragen stellen und beantworten, Feedback geben und von Experten mit umfassendem Wissen hören.