Find specific text and its related starting position within a text string.
FIND(find_text, within_text, [start_num])
FINDB(find_text, within_text, [start_num])
Find specific text and its related starting position within a text string using either defined values (e.g. "string") or cell references (e.g. C3).
FIND syntax requires the text to be found, the text in which the find text is to be searched for and (optional) the start position for the search.
FIND with a text string.
In the example below, the FIND function is used to find the position of specific letters in a text string.
Use the FIND function to find specific text and its related starting position within a text string.

FIND with a number.
In the example below, the FIND function is used to find the position of specific numbers in a number. Currency symbols and thousand commas are excluded from the calculation. Decimal points are included.
Use the FIND function to find specific numbers and their related starting position within a larger number.

Syntax
The FIND and FINDB functions consist of 3 arguments:
- find_text. Required. The text to be found.
- within_text. Required. The text in which the find text is to be searched for.
- start_num. Optional. The start position for the search, where the first character of within_text is at position 1.
Try it now!
Enter your formulas into the grey cells.
Scope
FIND() and FINDB() can be applied to cell references, text or numbers.
|
=FIND("a",C3,2) || returns position 7 for finding 'a' in cell C3 which contains the word 'America'. |
|
=FIND("A","LATIN AMERICA",5) || returns position 7 as starting point is character 5, not 1. |
|
=FIND(6,123456.789 ) || returns position 6. |
Caveats
find_text:
- find_text is case-sensitive and does not support wildcards.
- Use the SEARCH or SEARCHB functions for case sensitive or wildcard searches.
- If find_text is empty, FIND() matches the first character in a string.
- If find_text does not appear in within_text, FIND() and FINDB() return the #VALUE! Error.
start_num:
- Start_num is optional and defaults to 1.
- Use start_num to skip a specified number of characters before looking for find_text. The position of the character found will always be from the start of within_text.
- If start_num is not greater than zero, FIND() and FINDB() return the #VALUE! Error.
- If start_num is greater than the length of within_text, FIND() and FINDB() return the #VALUE! Error.
Language support:
- The FIND() and FINDB() functions may not be available in all languages.
- FIND() is intended for use with languages using a single-byte character set.
- FIND() always counts each character (both single- or double-byte) as 1, no matter the language.
- FINDB() is intended for use with languages using a double-byte character set.
- FINDB() counts each double-byte character as 2 if the default language supports a double-byte character set, otherwise as a 1.
- Japanese, Chinese (Simplified), Chinese (Traditional) and Korean support double-byte character sets.
- FIND() is intended for use with languages using a single-byte character set.
Related Functions
- Use the SEARCH() and SEARCHB() functions to find any text using case sensitive or wildcard arguments.
Functions Category