Returns the position of the first occurrence of one string within another.
InStr([start, ]string1, string2[, compare])
The compare argument can have the following values:
Constant | Value | Description |
---|---|---|
vbBinaryCompare | 0 | Perform a binary comparison. |
vbTextCompare | 1 | Perform a textual comparison. |
The InStr function returns the following 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 within string1 | Position at which match is found |
start > Len(string2) | 0 |
The following examples use InStr to search a string:
Dim SearchString, SearchChar, MyPos SearchString ="XXpXXpXXPXXP" ' String to search in. SearchChar = "P" ' Search for "P". MyPos =Instr(
4,
SearchString,
SearchChar,
1)
' A textual comparison starting at position 4. Returns 6. MyPos =Instr(
1,
SearchString,
SearchChar,
0)
' A binary comparison starting at position 1. Returns 9. MyPos =Instr(
SearchString,
SearchChar)
' Comparison is binary by default (last argument is omitted). Returns 9. MyPos =Instr(
1,
SearchString,
"W")
' A binary comparison starting at position 1. Returns 0 ("W" is not found).
Note 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.