FIND in WPS Spreadsheet: Locate Case-Sensitive Text and Parse Delimited Codes
Find exact case-sensitive positions in WPS Spreadsheet, locate repeated delimiters and extract fields with transparent helper-cell checks.
Verification status: See the evidence and test scope described in this guide. How formula examples are checked
Quick answer: FIND returns the one-based position of matching text and distinguishes uppercase from lowercase. =FIND("B","aB-bB") has expected result 2, while =FIND("b","aB-bB") gives 4.
Availability and version history
- Introduced: documented by 2019-06-12 in WPS material; the first release is not established.
- Availability: the dated official lesson identifies WPS Office for Windows Personal.
- Scope: exact supported builds and other WPS clients remain unverified.
- Checked: October 14, 2026. Documentation and independent examples; no native WPS execution.
Syntax and position rules
=FIND(find_text,within_text,[start_num])
Start_num is optional and defaults to one. Although the dated lesson prints it without optional brackets in its syntax line, its argument description explicitly states this default. Returned positions are counted from the beginning of within_text, even when the search begins later.
WPS distinguishes FIND from SEARCH: FIND is case-sensitive and does not provide wildcard matching. Do not pass a wildcard pattern expecting it to mean an arbitrary sequence of characters.
The walkthrough explicitly counts ordinary Chinese characters, English characters and spaces as one each. This does not establish every modern Unicode or surrogate-pair rule, so the examples below use straightforward ASCII text.
Example 1: separate case and starting position
Put the exact text aB-bB in A2. Its five characters are a, B, hyphen, b and B.
| Formula | Expected position |
|---|---|
=FIND("B",A2) |
2 |
=FIND("b",A2) |
4 |
=FIND("B",A2,3) |
5 |
=FIND("-",A2) |
3 |
The third formula starts after the first uppercase B but still returns five, the position in the complete original string. It does not restart numbering at one.
=FIND("Z",A2) has documented error #VALUE! because there is no matching text. A failed search is not represented by zero.
Example 2: locate repeated occurrences
Enter AB-AB-AB in A3. In B3 enter =FIND("AB",A3), giving 1. In C3 enter =FIND("AB",A3,B3+2), giving 4. In D3 enter =FIND("AB",A3,C3+2), giving 7.
Adding two moves past the complete two-character match. For this explicitly separated fixture, the three positions identify all occurrences. The formula is not a general overlapping-pattern counter.
=FIND("AB",A3,5) also returns 7. Starting at eight leaves no complete matching AB and produces #VALUE!. The starting position controls which matches are eligible, rather than changing the text being searched.
Advanced example: parse a three-field code
In a separate area, enter these text codes in A6:A8. The remaining columns in the table show expected outputs, not additional input data.
| A, input code | First hyphen | Second hyphen | Middle field | Final field |
|---|---|---|---|---|
| EU-AB-204 | 3 | 6 | AB | 204 |
| NA-Q-75 | 3 | 5 | Q | 75 |
| AP-LMN-900 | 3 | 7 | LMN | 900 |
In row six use:
B6: =FIND("-",A6)
C6: =FIND("-",A6,B6+1)
D6: =MID(A6,B6+1,C6-B6-1)
E6: =RIGHT(A6,LEN(A6)-C6)
Fill through row eight. The middle-field lengths are 2, 1 and 3. Subtracting one excludes the second delimiter itself. MID extracts the middle text, while RIGHT uses the number of characters remaining after the second delimiter.
The last fields remain extracted text. If they represent genuine numeric quantities, convert them deliberately with VALUE. Do not convert an identifier merely because it contains digits; doing so can discard meaningful leading zeros.
Advanced example: make malformed input visible
Change A8 to AP-LMN, which has only one hyphen. B8 still returns three, but the second search fails. This is useful evidence that the assumed three-field structure is missing.
For a reader-facing result, =IFERROR(MID(A8,B8+1,C8-B8-1),"Review code") can label the extraction failure. Retain the original code and helper results so the fallback does not hide why it failed.
This guard also catches other errors, so its label means the extraction needs review, not proof of one specific missing delimiter. IFERROR is a display safeguard, not a complete structural validator. Additional hyphens would require a separately defined parsing rule.
Empty searches and documented errors
WPS documents that empty find_text matches the character at start_num, or the first character when start_num is omitted. For nonempty A2 above, =FIND("",A2) has expected 1, and =FIND("",A2,3) has expected 3.
A start_num of zero or less, a start_num beyond the text length, or an absent match produces #VALUE! in the dated reference. These controls do not establish every fractional-start, blank-reference or Unicode edge case. Use explicit integer positions for reproducible extraction.
References and verification
Complete function-specific sources reviewed. Expected results are independently derived controls, not native application captures. Formulas use English names and comma separators; check the installed locale.