LevelUpWith

Explore / Excel Error Detective: Fix Formulas and Lookups / Lesson 1

Lesson 1: Read the Error Value

Learn what each Excel error value (#N/A, #VALUE!, #REF!, #DIV/0!, #NAME?, #NUM!, #NULL!, #SPILL!, #CALC!) means and its usual causes; this course is independent of Microsoft and not endorsed by it.

Free to read, no account needed. Part of Excel Error Detective: Fix Formulas and Lookups.

By the end of this level you'll be able to

  • Name the meaning and two common causes of each of the nine error values
  • Reproduce each error value on purpose in a small practice table
  • Tell which errors appear only in versions that have dynamic arrays (#SPILL!, #CALC!) and which appear in every version

Welcome, Error Detective

This course is independent of Microsoft and is not endorsed by it. It teaches Excel in Microsoft 365 on Windows and notes where Excel for the web, Excel for Mac and Excel 2021 or 2019 behave differently.

An error value is Excel's way of telling you what went wrong, much like a fault code on a car dashboard. Each code points to a different kind of failure. Once you can read the code, you know where to start looking. In this level you will:

  1. Build a small practice table.
  2. Cause each of the nine error values on purpose.
  3. Learn which errors exist only in versions with dynamic arrays.

Step 1: Build the Practice Table

Open a blank workbook and type this into cells A1:C5:

A B C
1 Name Sales Units
2 Ann 1200 10
3 Ben 800 0
4 Cal 950 5
5 Dee 400 4

Put the test formulas below in column E, starting at E2, one per row. Leave column F and the cells below each test empty unless a step tells you to type something there.

Step 2: Reproduce the Errors Found in Every Version

These seven errors appear in every current version of Excel. For each one, type the formula, read the result, then go on to the next.

  1. #DIV/0!: a number was divided by zero or by an empty cell.
    • Try: =B3/C3 (800 divided by 0).
    • Common causes: a zero in the divisor, or a divisor cell that has not been filled in yet.
  2. #N/A: a value that was looked up could not be found.
    • Try: =MATCH("Zed",A2:A5,0) or =VLOOKUP("Zed",A2:B5,2,FALSE).
    • Common causes: the key really is missing, or it is spelled or formatted differently from the key in the table.
  3. #VALUE!: a value has the wrong type for the operation.
    • Try: =A2+B2 (text plus a number).
    • Common causes: text in a cell used for arithmetic, or an argument of the wrong kind passed to a function.
  4. #REF!: a reference is not valid.
    • Try: =INDEX(B2:B5,10) (the range has no 10th row) or =VLOOKUP("Ann",A2:B5,3,FALSE) (the range has no 3rd column).
    • Common causes: rows, columns or sheets that a formula referred to have been deleted, or an index points outside its range.
  5. #NAME?: Excel does not recognise something you typed.
    • Try: =SUMM(B2:B5) or =IF(A2=Ann,1,0).
    • Common causes: a misspelled function or defined name, or text typed without quotation marks.
  6. #NUM!: a number is not valid.
    • Try: =SQRT(-1) or =10^400.
    • Common causes: an argument a function cannot accept, such as the square root of a negative number, or a result that is too large or too small for Excel to show. Functions that work by iteration, such as IRR, can also return #NUM! when they fail to find a result.
  7. #NULL!: two ranges were joined by a space but do not overlap.
    • Try: =SUM(B2:B3 B5).
    • Common causes: a space typed where a colon (B2:B5) or a comma (B2:B3,B5) was meant. In Excel, a space is the intersection operator.

Step 3: Reproduce the Dynamic-Array Errors

Dynamic array formulas can return many values, which spill into the cells next to them. These two errors belong to that system.

  1. #SPILL!: the result cannot spill onto the grid.
    • Try: type x in F3, then enter =SEQUENCE(3) in F2. The formula needs F2:F4, and F3 is in the way.
    • Common causes: a non-empty cell blocking the spill range, or a spill range whose size keeps changing and never settles, as with volatile functions.
    • Fix: select the error alert and choose Select Obstructing Cells, then clear or move the blocking entry.
  2. #CALC!: the calculation engine hit a case it cannot handle.
    • Try: =FILTER(A2:B5,B2:B5>5000). No sales are above 5000, and Excel cannot return an empty set.
    • Common causes: an empty result (fix it with FILTER's third argument, if_empty, for example =FILTER(A2:B5,B2:B5>5000,"None")), an array nested inside an array, or a LAMBDA that is never called, such as =LAMBDA(x,x+1).

Step 4: Check Your Version

Whether you can see #SPILL! and #CALC! depends on your version of Excel.

  • These versions have dynamic arrays and can show #SPILL! and #CALC!:
    • Excel for Microsoft 365 on Windows and Mac
    • Excel for the web
    • Excel 2021 and Excel 2024
  • These versions have no dynamic arrays:
    • Excel 2019, 2016 and earlier
    • In these versions, =FILTER(...) or =SEQUENCE(3) returns #NAME?, because the function does not exist there.
  • The other seven errors (#N/A, #VALUE!, #REF!, #DIV/0!, #NAME?, #NUM!, #NULL!) appear in all of these versions.

If a colleague using Excel 2019 opens your file and reports #NAME? where you see results, check whether the formula uses a dynamic-array function.

Quick Reference Checklist

When you see an error, ask:

  • #DIV/0!: Is the divisor zero or blank?
  • #N/A: Is the lookup value really in the table, spelled exactly the same way?
  • #VALUE!: Is text being used as a number?
  • #REF!: Was something deleted, or does an index go past the end of the range?
  • #NAME?: Is something misspelled, missing quotes, or not available in this version?
  • #NUM!: Is an argument impossible, or is the result too large?
  • #NULL!: Is there a space where a colon or comma should be?
  • #SPILL!: Is something blocking the spill range?
  • #CALC!: Is the result empty, or is an array nested inside an array?

Key Takeaways

  • Each error value names a category of problem. Read it before you start changing the formula.
  • #DIV/0!, #N/A, #VALUE!, #REF!, #NAME?, #NUM! and #NULL! appear in every version.
  • #SPILL! and #CALC! come with dynamic arrays: Microsoft 365, Excel for the web, and Excel 2021 and later.
  • In Excel 2019 and earlier, dynamic-array functions return #NAME? instead.
  • A space between ranges is the intersection operator, and ranges that do not overlap give #NULL!.
  • FILTER's if_empty argument prevents the #CALC! error that an empty result would cause.

A 6-question knowledge check follows this lesson in the app, free and without an account.

More like this

  • DAX Detective: Power BI Measures and Filter Context

    Find out why a Power BI total is wrong or why a measure changes when a slicer moves, then fix it on purpose and prove the fix. Each lesson gives you a small st…

    Course · Microsoft · Data & Analytics · Capable · 17 levels · 4 free · Professionally curated by levelupwith.com

  • Designing & Creating Microsoft Copilot Agents

    Master the art of building custom Copilot agents from scratch—from no-code basics to advanced integration, deployment, and optimization.

    Course · Microsoft · AI & Agents · Expert · 35 levels · 4 free · Professionally curated by levelupwith.com

  • Microsoft Azure Fundamentals (AZ-900) Exam Prep

    Learn to pick the cloud model, service type or Azure service that fits a scenario and explain why the alternatives do not, across every skill in the 20 July 20…

    Exam prep · AZ-900 · Cloud & Compute · Capable · 17 levels · 4 free · Professionally curated by levelupwith.com

  • Microsoft Azure Administrator (AZ-104) Exam Prep

    Work through every bullet of the AZ-104 skills measured as of April 17, 2026, learning each task in the Azure portal, Azure CLI, PowerShell, and ARM templates…

    Exam prep · AZ-104 · Cloud & Compute · Expert · 60 levels · 4 free · Professionally curated by levelupwith.com

  • Support Pro: Helping Users Move to Microsoft 365

    Help users get through a move from Google Workspace to Microsoft 365, from the week before cutover to the first tickets afterwards. You will learn what moves a…

    Course · Microsoft · Suite Support Pro: Configure and Fix · Expert · 40 levels · 4 free · Professionally curated by levelupwith.com

  • Microsoft 365 Support Pro: Copilot for End Users

    Learn to work out which Copilot a user actually has, and to fix the everyday Copilot tickets: missing buttons, licence and sign-in problems, files Copilot can'…

    Course · Microsoft · Suite Support Pro: Configure and Fix · Expert · 36 levels · 4 free · Professionally curated by levelupwith.com