Excel Error Messages Explained: #N/A, #VALUE!, #REF!, #NAME? and Every Other Error (2026)
HomeExcelError Messages
ExcelReference Post⏱ 14 min read

Excel Error Messages Explained: #N/A, #VALUE!, #REF!, #NAME? and Every Other Error

Excel has ten distinct error messages. Each one is trying to tell you something specific — if you know how to read them. This guide covers what each error means, the most common causes, and exactly how to fix (or hide) each one. Bookmark this and stop guessing.

All errors at a glance

ErrorMeaningUsual cause
#N/ANot availableLookup didn't find a match
#VALUE!Wrong typeText where number expected (or vice versa)
#REF!Broken referenceDeleted cell/sheet/column
#NAME?Unknown nameTypo in function or named range
#DIV/0!Division by zeroDenominator is 0 or blank
#NULL!Empty intersectionMissing comma between ranges
#NUM!Invalid numberOut-of-range value or impossible math
#SPILL!Spill blockedDynamic array can't fill (cells not empty)
#CALC!Calculation errorEmpty array or unsupported calculation
#GETTING_DATAData loadingExternal source still returning results

#N/A — Not Available

The most common error in real workbooks. Something looked for a value and couldn't find it.

Where it comes from

  • VLOOKUP, HLOOKUP, XLOOKUP — lookup value not in the lookup range
  • MATCH — search value not in the array
  • INDEX/MATCH combos — inner MATCH returns #N/A
  • Anywhere you deliberately return NA() as a placeholder

Common causes and fixes

Extra whitespace in the source or lookup

=VLOOKUP(A2, Table, 2, FALSE)   → #N/A
"John" and "John " (with a trailing space) don't match. Wrap the lookup with TRIM: =VLOOKUP(TRIM(A2), Table, 2, FALSE). Better: clean the source data with TRIM once, save the values back.

Number stored as text

Order ID 1005 (number) doesn't match Order ID '1005' (text)
Excel treats them as different values. Convert with VALUE: =VLOOKUP(VALUE(A2), Table, 2, FALSE). Or convert the whole column: select → Data → Text to Columns → Finish (with no changes) forces re-evaluation.

Wrong lookup direction

=VLOOKUP(A2, B:D, 2, FALSE)   trying to look left of the lookup column
VLOOKUP only looks right. For left lookups, use XLOOKUP (Excel 365/2021+) or INDEX/MATCH.

Case-sensitive vs insensitive

"MSFT" vs "msft" — VLOOKUP treats them as equal, but EXACT-based lookups don't

How to catch it

IFNA — the right way

=IFNA(VLOOKUP(A2, Table, 2, FALSE), "Not found")
Only catches #N/A. Other errors (like #REF!) still show — which is usually what you want.
Prefer IFNA over IFERROR for lookups

IFERROR swallows every error including real bugs. IFNA only catches "not found" — the intended error case for lookups — while letting genuine problems surface.

#VALUE! — Wrong data type

Excel got a data type it wasn't expecting. Numeric functions received text; text functions received errors; date functions got a non-date.

Common causes

Adding text to a number

=5 + "apple"   → #VALUE!

Text that looks like a number but isn't

=A1+A2 where A2 is "$1,234.56" imported as text
Excel sees text, refuses to add. Fix: convert with VALUE, or clean with SUBSTITUTE to remove currency symbols and commas.

Hidden characters from imports

=A1*2 fails because A1 has invisible non-breaking spaces from a web copy
Wrap with CLEAN (removes non-printable) and TRIM (removes whitespace): =VALUE(TRIM(CLEAN(A1))) * 2

Range where single value expected

=LEN(A1:A10)   → #VALUE! in older Excel
Modern Excel handles this as a spill. Older versions need =LEN(A1) or SUMPRODUCT wrapper.

Date arithmetic on text

=A1+30 where A1 is "2026-01-15" as text, not a date
Convert with DATEVALUE: =DATEVALUE(A1)+30

The systematic fix

When you get #VALUE!, click into the formula and use F9 on individual parts to see what each returns. Excel highlights the offending part.

#REF! — Broken reference

The formula points at something that doesn't exist anymore.

Common causes

  • You deleted a row/column/sheet that a formula referenced
  • You pasted a formula into a location that would push its references off the grid
  • You moved cells around and broke the linking pattern
  • An INDIRECT reference points at a missing sheet or cell

What it looks like in the formula bar

=SUM(A1, #REF!, C1)   ← someone deleted column B
Excel replaces the broken part with #REF! literally. You have to edit the formula manually — Excel can't guess your intent.

Recovery

  • Immediate Ctrl+Z — undo the deletion that caused it, if you just noticed
  • Trace precedents — Formulas → Trace Precedents shows what the formula was trying to reference before the break
  • Edit the formula — replace #REF! with the correct new reference
  • Named ranges — if you named the range instead of using cell addresses, deleting cells within the named range often preserves the formula automatically

Prevention

  • Use Excel Tables — they self-adjust when rows/columns change
  • Use structured references (Table1[Sales]) instead of cell addresses
  • Use named ranges for anything referenced from multiple formulas
  • Before deleting, run Find & Replace on the workbook for the cell address you're about to remove — quick sanity check

#NAME? — Unknown name

Excel doesn't recognize part of the formula. Something is spelled wrong, or refers to something that doesn't exist.

Common causes

Typo in function name

=SUMM(A1:A10)   → #NAME?
=VLOKUP(A2, ...)   → #NAME?
=IFF(A1>0, ...)   → #NAME?

Missing quotes around text

=IF(A1>0, Positive, Negative)   → #NAME?
=IF(A1>0, "Positive", "Negative")   ← correct
"Positive" without quotes is interpreted as a named range or variable that doesn't exist.

Non-existent named range

=SUM(Sales)   → #NAME? if there's no named range called "Sales"
Formulas → Name Manager shows all defined names. Verify the name exists and is spelled correctly.

Function only available in newer Excel

=XLOOKUP(...)   → #NAME? in Excel 2016 or older
Some functions (XLOOKUP, FILTER, UNIQUE, SORT, LAMBDA) don't exist in older Excel. Check your version: File → Account. Use fallback functions if the workbook must be compatible.

Missing colon in range

=SUM(A1 A10)   → #NAME?
=SUM(A1:A10)   ← correct

#DIV/0! — Division by zero

Excel refuses to divide by zero (or by a blank cell, which it treats as zero).

Common causes

  • Denominator is literally 0
  • Denominator cell is empty (Excel treats blank as 0)
  • AVERAGE of an empty range
  • Any calculation that boils down to division by zero

Fix

Guard the divisor

=IF(B1=0, 0, A1/B1)

IFERROR wrapper

=IFERROR(A1/B1, 0)
Catches #DIV/0! and any other error. Use IFERROR when you don't care why the calculation failed — just want a fallback.

The Excel idiom

=IF(B1, A1/B1, 0)
Shorter — IF(B1) evaluates truthy for any non-zero number, falsy for 0 or blank.

#NULL! — Empty intersection

Rare but distinctive. Happens when you use a space between two ranges (Excel's intersection operator) that don't overlap.

Intended intersection

=SUM(A1:B5 A2:C10)   → #NULL! if the ranges don't overlap

Actual usual cause

You meant to type a comma between arguments but typed a space instead:

Fat-fingered separator

=SUM(A1:A10 C1:C10)   → treats space as intersection operator
=SUM(A1:A10, C1:C10)   ← what you meant

When you see #NULL!, look for a space between things that should be separated by commas or arithmetic operators.

#NUM! — Invalid number

Excel got a number it can't work with — too big, too small, negative when positive was required, or the calculation didn't converge.

Common causes

Number too large

=10^1000   → #NUM!  (Excel's max is around 10^308)

Negative in a function that needs positive

=SQRT(-9)   → #NUM!
=DATE(-1, 5, 10)   → #NUM!

Iterative calculation didn't converge

=RATE(A1, B1, C1)   → #NUM! if the values don't produce a solvable rate
Provide a guess as the last argument: =RATE(A1, B1, C1, 0, 0, 0.05)

Impossible date

=DATE(2026, 13, 45)   → returns a valid date via rollover, but
=DATE(1899, 12, 31)   → #NUM! (before Excel's date epoch)

#SPILL! — Spill blocked

Modern-Excel error (365, 2021, and newer). A dynamic array formula tried to fill multiple cells but couldn't because the target cells weren't empty.

Common causes

  • Data or another formula sitting in the spill path
  • Merged cells anywhere the spill would land
  • The formula is inside an Excel Table (Tables can't contain spills)
  • Circular reference — formula referencing its own spill range

Fix

  1. Click the yellow warning icon on the formula
  2. Excel selects the obstructing cells for you
  3. Clear them, unmerge them, or move the formula elsewhere

For the Excel Table case: dynamic array formulas need to live outside Tables. Move the formula to a regular range.

Deep dive on #SPILL! errors

See the Dynamic Arrays Complete Guide for the full spill-error diagnostic checklist — including subtle causes like formatting conflicts and out-of-memory situations.

#CALC! — Calculation problem

Newer error that appears when a modern function can't complete a calculation. Usually means an empty array where content was expected.

Common causes

  • FILTER with all-false conditions and no if_empty argument
  • UNIQUE of an entirely empty range
  • Nested LAMBDA that returns an empty array
  • Very complex array operations that Excel can't complete

Fix

Provide an if_empty for FILTER

=FILTER(A2:A100, B2:B100="West", "No matches")

#GETTING_DATA — Async loading

Not really an error — a status. Excel is still fetching data from an external source (Power Query, real-time data, stock quotes, currency conversions). Wait a moment.

If it stays #GETTING_DATA for a long time:

  • Check the data source is responding (Power Query → Refresh)
  • Check your internet connection
  • For stock/currency: verify the ticker or currency code is valid

Catching errors gracefully

IFERROR — catch everything

=IFERROR(A1/B1, "n/a")

Returns "n/a" for any error. Simple and general.

IFNA — catch only #N/A

=IFNA(VLOOKUP(A2, table, 2, FALSE), "Not found")

Catches only the "not found" case. Other errors (like #REF!) still show — usually a good thing because they indicate real bugs.

ISERROR + IF — for conditional logic

=IF(ISERROR(A1/B1), "Bad data", A1/B1)

Slightly more verbose than IFERROR, but sometimes clearer intent.

Type-specific error detection

Excel has ISERR (all errors except #N/A), ISNA (only #N/A), ISERROR (all errors including #N/A). Use them when your logic depends on the specific error type.

Don't blanket-suppress errors

IFERROR is powerful and dangerous. Wrapping every formula in IFERROR hides real bugs. A better pattern: fix the underlying issue, and use IFNA only for lookups where "not found" is a legitimate outcome.

Debugging errors systematically

Step 1: Read the error type

The type tells you the category. #N/A means lookup failed. #REF! means broken reference. Don't just react — think about which category applies.

Step 2: Use F9 in the formula bar

Click into a formula, select a piece of it, press F9. Excel evaluates that piece and shows the result inline. Press Esc to restore. This is the fastest way to find which sub-expression is producing the error.

Step 3: Evaluate Formula

Formulas → Evaluate Formula walks through the calculation step by step, showing each intermediate result. Slower than F9 but more thorough for complex formulas.

Step 4: Trace precedents / dependents

Formulas → Trace Precedents (Ctrl+[) draws arrows to cells the formula reads. Trace Dependents (Ctrl+]) shows cells that reference the current one. Perfect for tracking down where bad data enters.

Step 5: Check data types

Numbers stored as text look identical but behave differently. Format cells → Number type reveals the actual storage. Text-as-number is the source of maybe 40% of all Excel errors.

Step 6: Isolate in a helper cell

Copy the failing formula into a scratch cell. Break it into smaller pieces. Watch each piece's output. The error appears at exactly one step — that's the one to fix.

The three-check habit for any lookup formula
  1. Does the lookup value exist in the source? (Ctrl+F to search)
  2. Are both values the same type — number vs text?
  3. Are there hidden spaces or characters? (TRIM/CLEAN test)
These three checks catch 90% of #N/A errors before you spend time on complex fixes.

Google Sheets equivalents

Sheets errors are mostly the same, with a few differences:

ExcelSheets equivalent
#N/A#N/A (same behavior)
#VALUE!#VALUE! (same)
#REF!#REF! (same)
#NAME?#NAME? (same)
#DIV/0!#DIV/0! (same)
#NUM!#NUM! (same)
#NULL!Doesn't exist — Sheets doesn't use the intersection operator
#SPILL!Sheets doesn't spill blocking like Excel — arrays overwrite
#GETTING_DATALoading indicators shown differently
#ERROR! — Sheets-specific parse error (bad syntax)

Sheets adds one Excel doesn't have: #ERROR! for formula parse errors. Usually a missing bracket, extra comma, or unmatched quote in the formula string.

Excel Wizard

Debug errors without staring at them

Every workbook has a moment where you stare at a formula wondering which cell is wrong. Excel Wizard reads your workbook, traces the error back to the source data or reference that's causing it, and suggests specific fixes — often with a one-click apply.

Install Excel Wizard →

Frequently asked questions

What does #N/A mean in Excel?

"Not available" — a lookup couldn't find the value. Fix by cleaning source data (TRIM, VALUE), checking data types, or wrapping in IFNA for a friendly fallback.

What does #VALUE! mean in Excel?

Wrong data type — text where a number was expected, or vice versa. Clean with VALUE, TRIM, CLEAN. F9 through the formula to find the offending piece.

What does #REF! mean in Excel?

The formula references a cell that no longer exists — usually because you deleted rows/columns/sheets. Edit the formula to fix. Prevent with Tables and named ranges.

What does #NAME? mean in Excel?

Excel doesn't recognize a function or name. Typo in the function, missing quotes on text, or a function from a newer Excel version. Check spelling and version support.

How do I hide errors in Excel?

Wrap with IFERROR (catches all errors) or IFNA (catches only #N/A). Prefer IFNA for lookups — hiding all errors globally masks real bugs.