ExcelISNUMBER자료형 검사

엑셀 ISNUMBER

셀이 숫자인지 검사해 TRUE/FALSE 반환합니다. 자료형 검증·텍스트 포함 판정·데이터 정리의 표준

ISNUMBER 수식 구조

=ISNUMBER(value)

value

검사할 값. 셀 참조·수식 결과·문자열 리터럴 모두 OK.

▸ TRUE 케이스: 숫자(정수·소수·음수·0), 날짜·시간(내부 숫자), 수식이 반환한 숫자

▸ FALSE 케이스: 텍스트("abc"·"123"), 빈 셀, TRUE/FALSE, 오류(#N/A 등)

▸ 항상 TRUE 또는 FALSE 반환 — 오류 발생 안 함 (모든 입력 안전)

직접 체험해보세요

10가지 값을 ISNUMBER로 검사 — 텍스트형 숫자, 논리값, 빈 셀, 오류 모두 FALSE

B1=ISNUMBER(A1)
A (값)분류ISNUMBER
1123숫자
정수
TRUE
23.14숫자
소수
TRUE
3-50숫자
음수
TRUE
40숫자
0도 숫자
TRUE
5"123"텍스트형 숫자
숫자 같은 텍스트
FALSE
6"abc"텍스트
일반 텍스트
FALSE
72025-12-25날짜
날짜(내부 숫자)
TRUE
8TRUE논리값
논리값
FALSE
9(빈 셀)빈 셀
빈 셀
FALSE
10#N/A오류
오류값
FALSE

10개 중 ISNUMBER가 TRUE인 셀

5 / 10

숫자·날짜(내부 숫자)만 TRUE — 텍스트형 숫자 "123", 논리값 TRUE, 오류는 FALSE

IS 시리즈 — 자료형 검사 함수 6종

엑셀의 자료형 검사 함수 패밀리 — 검사 대상별로 골라 사용

=ISNUMBER()숫자(날짜 포함)이 페이지
=ISTEXT()텍스트만
=ISBLANK()진짜 빈 셀만
=ISERROR()모든 오류
=ISNA()#N/A만
=ISLOGICAL()TRUE/FALSE만

실전 활용 예제

=IF(ISNUMBER(A2), A2*2, "숫자 아님")

셀이 숫자일 때만 계산. 텍스트가 섞인 데이터에서 #VALUE! 오류를 미연에 방지. 가장 기본 검증 패턴.

예시: A2="abc""숫자 아님"
=IF(ISNUMBER(SEARCH("사과", A2)), "포함", "없음")

텍스트 포함 검사의 표준 트릭. SEARCH는 못 찾으면 #VALUE!, 찾으면 위치(숫자) → ISNUMBER로 TRUE/FALSE 변환.

예시: A2="사과 1개""포함"
=SUMPRODUCT(--ISNUMBER(A1:A100))

범위에서 숫자 셀 개수. ISNUMBER 결과 배열을 1/0으로 변환해 합산. COUNT 대안.

예시: 100개 중 숫자 수숫자 셀 개수
=IF(ISNUMBER(MATCH(A2, B:B, 0)), "있음", "없음")

MATCH 결과로 존재 여부 확인. MATCH는 못 찾으면 #N/A → ISNUMBER로 깔끔하게 TRUE/FALSE 변환.

예시: 목록에 A2 존재 여부"있음"
더 알아보기

"숫자 같은 텍스트" 함정

실무에서 가장 헷갈리는 케이스. "123"처럼 보이는 셀이 사실 텍스트 형식이면 ISNUMBER가 FALSE를 반환합니다.

증상

  • 셀이 왼쪽 정렬됨 (숫자는 기본 오른쪽)
  • 셀 왼쪽 위에 초록색 삼각형 표시
  • SUM·AVERAGE가 0 반환
  • ISNUMBER가 FALSE

해결

  • VALUE 함수로 변환: =VALUE(A1)
  • 1을 곱해 숫자로 변환: =A1*1
  • 오류 메시지 클릭 → "숫자로 변환"
  • 셀 서식을 "숫자"로 변경 후 재입력

검증 트릭

=SUMPRODUCT(--NOT(ISNUMBER(A1:A100)))

텍스트형 숫자 개수 카운트. 0보다 크면 데이터 오염.

SEARCH/FIND + ISNUMBER — 텍스트 포함 검사

ISNUMBER의 진정한 가치 — SEARCH/FIND와 결합한 텍스트 포함 검사. 실무에서 가장 자주 등장하는 콤보.

동작 원리

  • SEARCH("키워드", 텍스트) → 못 찾으면 #VALUE!, 찾으면 위치(숫자)
  • ISNUMBER(SEARCH(...)) → 위치 있으면 TRUE, 오류면 FALSE
  • 결과: "키워드가 텍스트에 포함되어 있는지" 깔끔하게 TRUE/FALSE

실무 패턴

=IF(ISNUMBER(SEARCH("VIP", A2)), "VIP 고객", "일반")=SUMPRODUCT(--ISNUMBER(SEARCH("apple", A1:A100)))

A열에 "apple" 포함된 셀 개수 카운트.

FIND vs SEARCH

SEARCH는 대소문자 무시·와일드카드 OK, FIND는 대소문자 구분. 일반적으론 SEARCH가 편리.

IFERROR vs ISNUMBER — 언제 어느 걸?

오류 처리의 두 가지 접근. 의도가 다름.

IFERROR — 오류 발생 시만

=IFERROR(SEARCH("X", A2), "없음")

"오류면 대체값" — 단순하고 짧음. 결과를 그대로 사용할 때 적합.

ISNUMBER — 명시적 검증

=IF(ISNUMBER(SEARCH("X", A2)), "있음", "없음")

"숫자면 TRUE, 아니면 FALSE" — 의도가 더 명확. 결과의 자료형을 확정짓고 싶을 때.

판단 기준: 단순 오류 회피는 IFERROR가 짧음. "있다/없다" 같은 명확한 분기면 ISNUMBER가 의도 명확.

자주 묻는 질문 (FAQ)

Q. 날짜는 왜 ISNUMBER가 TRUE인가요?

엑셀에서 날짜는 내부적으로 1900-01-01부터의 일수(직렬값)로 저장됩니다. 표시만 날짜 형식일 뿐 실제는 숫자. 시간도 마찬가지.

Q. TRUE/FALSE는 왜 ISNUMBER가 FALSE인가요?

엑셀에서 논리값은 별도 자료형. 1·0으로 자동 변환되긴 하지만, ISNUMBER 검사는 "변환 전 형태"를 확인하므로 FALSE. 논리값 검사는 ISLOGICAL 사용.

Q. 빈 셀은 0으로 평가되는데 왜 FALSE인가요?

빈 셀은 수식 연산에서 0으로 취급되지만 실제 값은 없음. ISNUMBER는 "값의 존재와 형태"를 보는 함수이므로 FALSE. 진짜 빈 셀 검사는 ISBLANK.

Q. 구글 스프레드시트에서도 동일한가요?

네. ISNUMBER는 구글 시트에서도 같은 문법·동작.