=A1+B1처럼 단순한 수식인데 #VALUE!가 뜰 때가 있습니다. 눈으로 보면 분명 숫자가 들어 있는데 말이죠.
#VALUE!는 “값의 종류가 안 맞다”는 뜻입니다. 숫자를 기대하는 자리에 엑셀이 텍스트로 인식하는 뭔가가 들어 있는 겁니다.
원인은 대부분 세 가지 안에 있습니다.
1. 숫자처럼 보이는데 텍스트다
가장 흔합니다. 다른 시스템에서 내려받거나 웹에서 복사한 데이터에 특히 많아요.
확인법: 셀을 클릭했을 때 값이 왼쪽에 붙어 있으면 텍스트, 오른쪽에 붙어 있으면 숫자입니다. 엑셀은 숫자를 자동으로 오른쪽 정렬하거든요.
셀 왼쪽 위에 작은 녹색 삼각형이 있으면 “텍스트로 저장된 숫자”라는 표시입니다.

해결 — 열 전체를 한 번에
가장 확실한 방법입니다.
해당 열을 선택 → 데이터 → 텍스트 나누기 → 다음 → 다음 → 일반 선택 → 마침
클릭 몇 번이면 열 전체가 진짜 숫자로 바뀝니다.
수식으로 처리하려면
=VALUE(A1) + VALUE(B1)
또는 그냥 1을 곱하거나 --(더블 마이너스)를 붙여도 숫자로 바뀝니다.
=A1*1 + B1*1
=--A1 + --B1
2. 눈에 안 보이는 공백이나 문자가 있다
값 앞뒤에 공백이 붙어 있으면 텍스트가 됩니다. "100 "은 숫자 100이 아니에요.
=VALUE(TRIM(A1))
TRIM으로도 안 되면 줄바꿈 없는 공백(웹 복사 시 자주 딸려옵니다)일 수 있습니다. 일반 공백이 아니라서 TRIM이 못 지웁니다.
=VALUE(SUBSTITUTE(A1, CHAR(160), ""))
인쇄되지 않는 제어문자가 섞여 있다면 CLEAN을 함께 씁니다.
=VALUE(TRIM(CLEAN(A1)))
3. 날짜 계산에서 형식이 안 맞는다
날짜끼리 빼는데 #VALUE!가 뜬다면, 둘 중 하나가 텍스트로 저장된 날짜입니다.
2026-09-21처럼 보여도 왼쪽 정렬이면 텍스트예요. 이건 날짜 계산이 안 됩니다.
해결은 위와 같이 텍스트 나누기(3단계에서 날짜 선택)를 쓰거나 DATEVALUE를 씁니다. 자세한 내용은 날짜가 숫자로 바뀔 때 글에서 다뤘습니다.
어느 셀이 문제인지 찾기
범위가 넓으면 어디가 범인인지 모릅니다. 빈 열에 이 수식을 넣고 아래로 끌어보세요.
=ISTEXT(A1)
TRUE가 나오는 셀이 텍스트입니다. 필터를 걸어 TRUE만 모아 보면 한눈에 보입니다.
숫자인지 확인하려면 =ISNUMBER(A1)을 쓰면 됩니다. FALSE인 셀이 문제예요.
오류 검사 기능도 있습니다
#VALUE!가 난 셀을 클릭하면 왼쪽에 느낌표 아이콘이 나타납니다. 클릭하면 엑셀이 원인을 알려주고 숫자로 변환 같은 해결 버튼을 제시하기도 합니다.
한 번에 여러 셀을 고치려면 텍스트로 저장된 숫자들을 전부 선택한 뒤 그 아이콘에서 숫자로 변환을 누르면 됩니다.
다른 오류와 구분하기
| 오류 | 원인 | 접근 | |—|—|—| | #VALUE! | 값의 종류가 안 맞음 | 텍스트/숫자 확인 | | #N/A | 찾는 값이 없음 | VLOOKUP #N/A 오류 | | #REF! | 참조가 사라짐 | #REF! 오류 | | #NAME? | 함수명을 모름 | 오타, 버전 미지원 |
같은 “텍스트로 저장된 숫자” 문제가 VLOOKUP에서는 #N/A로, 사칙연산에서는 #VALUE!로 나타납니다. 오류 모양은 달라도 뿌리가 같은 경우가 많아요.
근본적으로 막으려면
데이터를 받아올 때 형식을 정리하는 습관이 제일 낫습니다.
외부 파일을 열자마자 숫자여야 할 열을 선택하고 텍스트 나누기를 한 번 돌려두세요. 30초면 되고, 나중에 오류를 쫓아다니는 시간이 사라집니다.
CSV를 열 때는 그냥 더블클릭하지 말고 데이터 → 텍스트/CSV에서 가져오기로 열면 각 열의 형식을 지정할 수 있습니다. 이쪽이 훨씬 안전합니다.