ERROR.TYPE in WPS Spreadsheet: Classify Actual Errors with the Historical Seven-Code Map
Use WPS ERROR.TYPE to identify actual worksheet errors, separate text lookalikes and preserve the difference between no code and no error.
Verification status: See the evidence and test scope described in this guide. How formula examples are checked
Quick answer: ERROR.TYPE returns a numeric code for a recognized worksheet error. In the documented WPS table, =ERROR.TYPE(NA()) has expected code 7. An input with no error instead produces #N/A, so the function is not an ordinary yes/no error test.
Availability and version history
- Introduced: documented by 2019-06-25 in WPS material; the first release is not established.
- Availability: the dated lesson identifies Windows Personal; its historical seven-code map is retained.
- Scope: exact supported builds and other WPS clients remain unverified.
- Checked: October 14, 2026. Documentation and independent examples; no native WPS execution.
Syntax and the dated mapping
=ERROR.TYPE(error_val)
Error_val is normally a reference to a formula result. The June 25, 2019 Windows Personal lesson includes an image with this exact mapping:
| Actual error value | Returned code |
|---|---|
| #NULL! | 1 |
| #DIV/0! | 2 |
| #VALUE! | 3 |
| #REF! | 4 |
| #NAME? | 5 |
| #NUM! | 6 |
| #N/A | 7 |
| Other values | #N/A |
This is the historical seven-code table. The lesson’s prose also says no-error inputs produce #N/A and that other error types are not mapped by that table. It does not establish a universal current list of every newer error class.
Example 1: produce actual errors and text controls
Enter these formulas in A2:A6, then put =ERROR.TYPE(A2) in B2 and fill down.
| Cell | Formula in A | Input kind | B, expected result |
|---|---|---|---|
| A2 | =NA() |
Actual #N/A error | 7 |
| A3 | =1/0 |
Actual division-by-zero error | 2 |
| A4 | =23 |
Number | #N/A |
| A5 | ="#N/A" |
Text lookalike | #N/A |
| A6 | ="" |
Empty text value | #N/A |
NA creates an actual error. Quotation marks in A5 instead produce text containing an error-looking label; ERROR.TYPE does not classify those characters as the actual #N/A value.
A returned #N/A in B4 does not mean A4 itself had that error. It is the classifier’s documented response when it has no mapped error code for the supplied value.
Example 2: inspect error presence separately
Use a separate output area: put =ISERROR(A2) in C2 and fill through C6. Expected results are TRUE, TRUE, FALSE, FALSE and FALSE.
ISERROR answers whether the source value is an error. ERROR.TYPE answers a different question about the identity of an error it recognizes. Keeping both columns prevents confusing a classifier’s own #N/A result with the input’s condition.
For A2, =TYPE(A2) has expected code sixteen because the result belongs to the error category. ERROR.TYPE gives seven for the particular #N/A error. These are separate code systems, not conflicting answers.
Advanced example: build a complete diagnostic record
Replace the raw classifier display with a guarded numeric code in D2:
=IFERROR(ERROR.TYPE(A2),0)
Fill through D6. The expected codes are 7, 2, 0, 0 and 0. Here zero means that no historical listed code was obtained. It must not be labelled proof of “no error,” because an unlisted error could also lack a code.
Use the separate C error-presence column to distinguish those cases. In E2 enter:
=IF(C2,IF(D2=0,"Unmapped error","Listed error"),"No error")
Expected labels for the fixture are Listed error, Listed error, No error, No error, No error. A future unlisted source error could produce the separate Unmapped error label under this diagnostic design rather than silently being reported as a valid result.
IFERROR handles the classifier’s failure to return a code, while the original source value remains visible in A. The design does not replace the original calculation with zero.
Advanced example: count a particular error without losing provenance
For D2:D6, =COUNTIF(D2:D6,7) gives one #N/A-classified input and =COUNTIF(D2:D6,2) gives one division-by-zero-classified input.
These counts refer to the source inputs classified in A. Counting #N/A displays in raw B would instead mix no-code responses with source error identities and answer a different question.
If A2 is a lookup result, its actual #N/A could represent a missing key or an error stored in a successfully matched source cell. ERROR.TYPE sees the resulting error, not its cause. Keep the lookup inputs and matched source data available when investigating provenance.
Error and version limits
The seven-code table was visually reviewed in the original official lesson image. No additional code eight, spill-related code or current-client extension is inferred from another spreadsheet product.
Error-looking text and actual errors remain separate. The examples use documented error producers and numeric controls; exact error precedence, unsupported modern error classes and cross-client availability retain their limits. Worked results are independent expectations, not native WPS captures.
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.