Table of contents
Collapse the table of content
Expand the table of content

InStr Function

office 365 dev account|Last Updated: 6/12/2017
1 Contributor

Returns a Variant ( Long ) specifying the position of the first occurrence of one string within another. SyntaxInStr ([ start, ] string1, string2 [, compare ]) The InStr function syntax has thesearguments:

startOptional. Numeric expression that sets the starting position for each search. If omitted, search begins at the first character position. If start containsNull, an error occurs. The start argument is required if compare is specified.
string1Required. String expression being searched.
string2Required. String expression sought.
compareOptional. Specifies the type of string comparison. If compare is Null, an error occurs. If compare is omitted, the OptionCompare setting determines the type of comparison. Specify a valid LCID (LocaleID) to use locale-specific rules in the comparison.

Settings The compare argument settings are:

vbUseCompareOption-1Performs a comparison using the setting of the Option Compare statement.
vbBinaryCompare0Performs a binary comparison.
vbTextCompare1Performs a textual comparison.
vbDatabaseCompare2Microsoft Access only. Performs a comparison based on information in your database.

Return Values

IfInStr returns
string1 is zero-length0
string1 is NullNull
string2 is zero-lengthstart
string2 is NullNull
string2 is not found0
string2 is found within string1Position at which match is found
start > string20

Remarks The InStrB function is used with byte data contained in a string. Instead of returning the character position of the first occurrence of one string within another, InStrB returns the byte position.


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.
© 2018 Microsoft