ISREF function

ISREF returns TRUE if a value is a cell reference, FALSE otherwise; use it to validate whether a result is a reference rather than a computed value.

=ISREF(value)

Generate a ISREF formula

Describe what you need. The generator will reach for ISREF where ISREF is the right tool, and tell you when it is not.

How to get a better answer
  • Name your columns by letter and by header: "column F (Net Value)" beats "the amount column".
  • State every condition, including the negatives — "not cancelled" changes the formula's shape.
  • Say where the data starts if it is not row 1, and whether it will grow.
  • Check the settings above match your spreadsheet: the wrong argument separator is a syntax error on your machine.

Arguments

How ISREF reads its arguments
valuerequiredISREF
ArgumentRequiredDescription
valueRequiredAny value, formula result, or reference to test. If value is a direct cell reference like A1, it is evaluated to its content first, so ISREF typically checks results from functions that preserve references, such as INDIRECT.

Returns

Boolean (TRUE or FALSE).

Availability

Excel: All · Google Sheets: Supported

Worked examples

1. Validate a dynamically constructed cell reference

StudentSubjectAssignmentScoreMax Score
AliceMathQuiz 185100
BobEnglishEssay92100
=ISREF(INDIRECT("D2"))

Result: TRUE

INDIRECT("D2") constructs a reference to cell D2 as a reference object (not its value). ISREF detects this reference and returns TRUE. This is useful when building dynamic cell references from text strings.

2. Check if a direct cell reference is evaluated to its value

StudentSubjectAssignmentScoreMax Score
AliceMathQuiz 185100
BobEnglishEssay92100
=ISREF(D2)

Result: FALSE

D2 is a direct cell reference, but the formula evaluates it to its content (85), not the reference itself. ISREF receives the value 85, not a reference, so it returns FALSE. Direct references are evaluated before most functions see them.

3. Identify if an INDEX result is a reference

StudentSubjectAssignmentScoreMax Score
AliceMathQuiz 185100
BobEnglishEssay92100
=ISREF(INDEX(D:D,2))

Result: FALSE

INDEX(D:D,2) returns the value from row 2 of column D (85), not a reference to that cell. Most functions, including INDEX, return values not references. ISREF correctly identifies this as FALSE.

Common errors

Which ISREF error are you seeing?
ISREF returned an error#NAME?
Verify you are using Excel or a compatible application. Check your platform's function list. If unavailable, use TYPE() as an alternative to detect different data types.
#VALUE!
ISREF takes exactly one argument. Ensure you are calling it as =ISREF(value) with no extra commas or arguments.
#REF!
Verify the cell address string in INDIRECT is valid (e.g., "D2", not "D "). Check that the referenced cell has not been deleted. Use IFERROR to handle invalid references gracefully.
ErrorWhy it happensHow to fix it
#NAME?ISREF might not be available in your spreadsheet application. It is available in Excel but not always in Google Sheets or other platforms.Verify you are using Excel or a compatible application. Check your platform's function list. If unavailable, use TYPE() as an alternative to detect different data types.
#VALUE!ISREF receives too many arguments or an argument in an unexpected format that cannot be evaluated.ISREF takes exactly one argument. Ensure you are calling it as =ISREF(value) with no extra commas or arguments.
#REF!The reference passed to ISREF via INDIRECT points to a deleted or invalid cell, or the INDIRECT formula itself contains a malformed reference string.Verify the cell address string in INDIRECT is valid (e.g., "D2", not "D "). Check that the referenced cell has not been deleted. Use IFERROR to handle invalid references gracefully.

Tips and when to use something else

  • ISREF almost always returns FALSE in practice because spreadsheet functions evaluate references to their values before the function sees them. Use INDIRECT if you need a reference object that ISREF can detect.
  • For most use cases, avoid ISREF to validate that a cell exists—use ISBLANK or ISERROR instead, as they are more reliable and faster.
  • ISREF is rarely needed in most formulas. If you are checking data types, ISNUMBER, ISTEXT, or ISBLANK are usually better choices.
  • In complex spreadsheet logic with dynamic references, consider whether you truly need ISREF or whether you would benefit from TYPE() to detect data categories more broadly.

Frequently asked questions

When does ISREF actually return TRUE?
ISREF returns TRUE only when given an actual reference object, which rarely happens because most functions evaluate references to values first. INDIRECT can create reference objects that ISREF detects. In practical spreadsheet work, ISREF true results are uncommon.
What is the difference between ISREF and TYPE?
ISREF checks if something is a reference, returning TRUE or FALSE. TYPE returns a number (1–7) representing the data type (1=number, 2=text, 4=logical, 16=error, 64=array). TYPE gives more detail but ISREF is simpler for just detecting references.
Can I use ISREF to check if a cell exists?
No. ISREF checks if something is a reference object, not whether a cell has content. Use ISBLANK(A1) to check if a cell is empty, or ISERROR(A1) to check for errors. These are more reliable for validation.
Why does =ISREF(A1) return FALSE instead of TRUE?
Because A1 is evaluated to its value (not kept as a reference) before ISREF sees it. To pass a reference to ISREF, use INDIRECT: =ISREF(INDIRECT("A1")) returns TRUE. This is by design in how spreadsheet formulas work.

Need a different formula?

The full generator is not scoped to one function — describe any spreadsheet problem and it will pick.

Open the formula generator

Reviewed 2026-09-17