InStr Function

Returns a Long specifying the position of the first occurrence of one string within another.

Syntax

InStr([start, ]string1, string2[, compare])

The InStr function syntax has these arguments:

Part Description
start

Optional. Numeric expression that sets the starting position for each search. If omitted, search begins at the first character position. If start contains Null, an error occurs. The start argument is required if compare is specified.

string1 Required. String expression being searched.
string2 Required. String expression sought.
compare

Optional. Specifies the type of string comparison. The compare may be omitted or have 0 or 1 values. Specify 0 (default) for binary comparison. For textual comparison which is not case-sensitive, specify 1. If compare is Null, an error occurs.

Remarks

Return Values

If InStr returns
string1 is zero-length 0
string1 is Null Null
string2 is zero-length start
string2 is Null Null
string2 is not found 0
string2 is found in string1 Position at which match is found
start > string2 0

Example

This example uses the InStr function to return the position of the first occurrence of one string within another.

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.

 

See Also

StrComp Function