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.