Information functions

ISNUMBER

Matches all 1,256 recorded answers

Recorded: 1,227 in the answer bank and 29 workbook cells. How we measure this · See the Rust code

Local names of this family in 40 languages

Microsoft's list gives these names for the whole family without saying which belongs to which function, so they are shown together.

LanguageName in Excel
ArabicISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT
BulgarianISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT
CzechISODD, JE.CHYBA, JE.CHYBHODN, JE.ČISLO, JE.LOGHODN, JE.NEDEF, JE.NETEXT, JE.ODKAZ, JE.PRÁZDNÉ, JE.TEXT
DanishER.FEJL, ER.FJL, ER.IKKE.TEKST, ER.IKKE.TILGÆNGELIG, ER.LOGISK, ER.REFERENCE, ER.TAL, ER.TEKST, ER.TOM, ER.ULIGE
GermanISODD, ISTBEZUG, ISTFEHL, ISTFEHLER, ISTKTEXT, ISTLEER, ISTLOG, ISTNV, ISTTEXT, ISTZAHL
GreekISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT
English (Australia)ISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT
English (United Kingdom)ISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT
English (United States)ISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT
SpanishES.IMPAR, ESBLANCO, ESERR, ESERROR, ESLOGICO, ESNOD, ESNOTEXTO, ESNUMERO, ESREF, ESTEXTO
EstonianISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT
FinnishONEI_TEKSTI, ONLUKU, ONPARITON, ONPUUTTUU, ONTEKSTI, ONTOTUUS, ONTYHJÄ, ONVIITT, ONVIRH, ONVIRHE
FrenchEST.IMPAIR, ESTERR, ESTERREUR, ESTLOGIQUE, ESTNA, ESTNONTEXTE, ESTNUM, ESTREF, ESTTEXTE, ESTVIDE
HebrewISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT
CroatianISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT
HungarianHIBA.E, HIBÁS, HIVATKOZÁS, LOGIKAI, NEM.SZÖVEG, NINCS, PÁRATLANE, SZÁM, SZÖVEG.E, ÜRES
IndonesianISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT
ItalianISODD, VAL.ERR, VAL.ERRORE, VAL.LOGICO, VAL.NON.DISP, VAL.NON.TESTO, VAL.NUMERO, VAL.RIF, VAL.TESTO, VAL.VUOTO
JapaneseISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT
KoreanISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT
LithuanianISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT
LatvianISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT
NorwegianERF, ERFEIL, ERIKKETEKST, ERIT, ERLOGISK, ERREF, ERTALL, ERTEKST, ERTOM, ISODD
DutchIS.ONEVEN, ISFOUT, ISFOUT2, ISGEENTEKST, ISGETAL, ISLEEG, ISLOGISCH, ISNB, ISTEKST, ISVERWIJZING
PolishCZY.ADR, CZY.BŁ, CZY.BŁĄD, CZY.BRAK, CZY.LICZBA, CZY.LOGICZNA, CZY.NIE.TEKST, CZY.NIEPARZYSTE, CZY.PUSTA, CZY.TEKST
Portuguese (Brazil)É.NÃO.DISP, É.NÃO.TEXTO, ÉCÉL.VAZIA, ÉERRO, ÉERROS, ÉLÓGICO, ÉNÚMERO, ÉREF, ÉTEXTO, ISODD
Portuguese (Portugal)É.CÉL.VAZIA, É.ERRO, É.ERROS, É.LÓGICO, É.NÃO.DISP, É.NÃO.TEXTO, É.NÚM, É.REF, É.TEXTO, ÉÍMPAR
RomanianISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT
RussianЕЛОГИЧ, ЕНД, ЕНЕТЕКСТ, ЕНЕЧЁТ, ЕОШ, ЕОШИБКА, ЕПУСТО, ЕССЫЛКА, ЕТЕКСТ, ЕЧИСЛО
SlovakISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT
SlovenianISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT
Serbian (Latin)ISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT
SwedishÄREJTEXT, ÄRF, ÄRFEL, ÄRLOGISK, ÄRSAKNAD, ÄRTAL, ÄRTEXT, ÄRTOM, ÄRTOM, ÄRUDDA
ThaiISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT
TurkishEBOŞSA, EHATA, EHATALIYSA, EMANTIKSALSA, EMETİNDEĞİLSE, EMETİNSE, EREFSE, ESAYIYSA, EYOKSA, TEKMİ işlevi
UkrainianISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT
VietnameseISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT
Chinese (Simplified)ISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT
Chinese (Hong Kong)ISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT
Chinese (Traditional)ISBLANK, ISERR, ISERROR, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISODD, ISREF, ISTEXT

Names from Microsoft's support site.

What it does

ISNUMBER(value)

ISNUMBER(value) returns TRUE when the value it receives has kind Number, and FALSE for every other kind.

Number in Excel's value universe means one thing: an IEEE 754 double-precision (binary64) floating-point value (the value universe). Dates, times, currency amounts, percentages and durations are all Number — they are numbers wearing display formats — so ISNUMBER returns TRUE for a cell showing 2024-03-01, for one showing 14:30, and for one showing $1,250.00. Formatting is not part of the value.

Logical is not Number. TRUE converts to 1 on demand in arithmetic contexts, but its kind is Logical, and ISNUMBER(TRUE) is FALSE.

ISNUMBER is the function Microsoft chose to illustrate the whole family's non-conversion rule, and the illustration is the most useful sentence on the topic anywhere: in ISNUMBER("19"), "19" is not converted from text to a number, so the answer is FALSE.

Arguments

value — required, exactly one. The published signature is ISNUMBER(value).

Not converted. Microsoft's remark: "The value arguments of the IS functions are not converted. Any numeric values that are enclosed in double quotation marks are treated as text." This is the axis on which ISNUMBER differs from every "is this numeric?" test a programmer's instinct reaches for. It does not parse. It does not try. It reads the kind.

The consequence in real workbooks: numbers imported as text — the leading-apostrophe column, the CSV field with a trailing space, the figure pasted out of a web page — are Text, and ISNUMBER correctly reports FALSE on all of them. That is not a limitation, it is the diagnosis, and it is why ISNUMBER is the standard tool for finding text-that-looks-numeric in an imported range.

Try it

Input cells (optional)

Example: {"B2": 3, "B3": 4}. A1 holds the formula. Other cells need values before a formula can read them.

Enter a formula, then calculate.

Runs locally in your browser with OneCalc. Its answer may differ from Excel. Use English function names and commas between arguments.

Quirks

Result and edge cases

Returns a Logical, or an array of Logical when the argument is an array.

  • Empty is FALSE. An empty cell has no number in it; that emptiness maps to 0 in most arithmetic contexts, but ISNUMBER classifies rather than converts, so the zero never materializes.
  • Error is FALSE, and does not propagate. ISNUMBER is one of the declared per-family exceptions to error propagation (coercion and lifting).
  • Subnormals and extremes are numbers. The smallest positive subnormal double and the largest finite double are Number; there is nothing at the edges of the format that changes the kind.
  • Non-finite values do not arise. Excel cells never hold infinities or NaN; functions that could produce them publish #NUM! instead (the call pipeline). So there is no "is it a number but not finite?" case to worry about.
  • Arrays are classified elementwise, giving a same-shaped mask — the standard idiom for auditing a range: SUMPRODUCT(--ISNUMBER(A1:A100)) counts how many entries are genuinely numeric.

Errors

ISNUMBER returns no error of its own for any value it can be given. The only failure available to it is arity: zero arguments, or two. ISNUMBER() is expected to be refused at formula entry rather than evaluated (the call pipeline); the reference engine, having no entry-time surface, reports #VALUE! for both the too-few and the too-many case.

Microsoft's IS-functions page documents no error return for ISNUMBER.

How to implement

Notes for implementers

  1. Resist adding a numeric-text fast path. Every implementer's instinct is that ISNUMBER should say TRUE for "19". Excel documents that it does not, and a workbook's error auditing depends on it not doing so.
  2. Dates must be Number, not a separate date kind. An engine that models dates as their own value kind will get ISNUMBER wrong on every date cell. The format is presentation; the value is a serial number.
  3. Empty must stay distinct from Number(0) through argument preparation. Collapsing them early flips ISNUMBER on every blank cell.

Rust code

Show the CalcFunc source of this function

Quoted from the public repository DnaCalc/DnaCalc, crates calc-func and calc-fml, at commit 9e1884369a67. Comments are the source's own. A kernel shared with other functions appears once, on its module page.

ISNUMBER · 1 lines · calc-func/src/catalogue/information.rs on GitHub
unary(ISNUMBER, "ISNUMBER", VALUE, isnumber)
isnumber · 9 lines · calc-func/src/catalogue/information.rs on GitHub
/// ISNUMBER: TRUE for a number; number text and logicals are not numbers here.
fn isnumber(
    arguments: &[CalcValue],
    services: &mut EvalServices<'_>,
) -> Result<CalcValue, FunctionFault> {
    predicate(ISNUMBER, arguments, services, scalar, |core| {
        matches!(core, CoreRef::Number(_))
    })
}

Kernels shared with other functions

Argument and result plumbing

No implementation has been published with a Handbook test suite for this function.

Version differences

The recorded environments below distinguish a reading from a same-input comparison. Counts describe captured inputs in each environment; overlapping captures and comparisons are not totals of unique worksheet calls.

Excel 16.0 buildPlatform and CPUCaptured inputs
20430Windows, 64-bit, CPU not recorded1,227

The record contains no same-input comparison between these environments. Reading different inputs on different builds does not establish either a version change or cross-build agreement.

Recorded environments and comparison details.

Excel 16.0 build 20430

Windows, 64-bit, CPU not recorded

1,227 captured inputs are indexed for this environment. Capture dates: 2026-09-29 to 2026-09-29. This is a reading count, not a comparison with another build.

Alternatives

Relationships

  • ISTEXT is its near-complement for the two kinds that matter in imported data, but the two are not complements in general: ISNUMBER and ISTEXT are both FALSE for Empty, Logical and Error.
  • ISNONTEXT is the true complement of ISTEXT, not of ISNUMBER. ISNONTEXT(TRUE) is TRUE; ISNUMBER(TRUE) is FALSE.
  • N is the conversion ISNUMBER declines to perform, and it does not help: N maps all text to 0, so N("19") is 0, not 19.
  • VALUE and NUMBERVALUE are the functions that actually parse text into a number, and they are the correct follow-up once ISNUMBER has told you a column is text. NUMBERVALUE takes explicit decimal and group separators and is the one to reach for when the text came from another locale.
  • TYPE returns 1 for exactly the values ISNUMBER calls TRUE.
  • ISNUMBER(SEARCH(needle, haystack)) is the canonical substring test, because SEARCH returns a position or #VALUE! and ISNUMBER converts that pair into a clean boolean. It is probably this function's single most common appearance in real formulas.

Named variants

No named variants are recorded yet.

Suggest a correction or contribute an implementation · For agents