엑셀 #VALUE 오류 원인과 해결 방법은 먼저 수식이 참조하는 셀의 형식을 확인하는 것에서 시작합니다. 숫자처럼 보이지만 텍스트로 저장된 값, 앞뒤 공백이나 숨은 문자, 유효하지 않은 날짜, VLOOKUP 인수 오류가 대표적인 원인입니다. 오류가 난 셀만 고치기보다 수식의 어느 부분에서 문제가 생겼는지 단계적으로 확인해야 재발을 막을 수 있습니다.
엑셀 #VALUE 오류 원인과 해결 방법: 먼저 확인할 핵심 원인
- 숫자 셀에 숫자가 아닌 텍스트나 특수 문자가 들어간 경우
- 셀 앞뒤에 공백, 줄 바꿈, 보이지 않는 문자가 포함된 경우
+,-,*,/같은 직접 연산에 텍스트가 섞인 경우- 날짜가 날짜 값이 아니라 텍스트로 저장됐거나 지역 날짜 형식과 맞지 않는 경우
VLOOKUP의 조회값이 지나치게 길거나 열 번호 인수가 잘못된 경우- 수식 자체가 복사·수정되는 과정에서 참조 범위나 인수 형식이 바뀐 경우
1. 수식 계산으로 오류가 발생한 지점 찾기
오류가 복잡한 수식에서 발생했다면 결과 셀만 바라보지 말고 수식을 단계별로 계산합니다.
#VALUE!가 표시된 셀을 선택합니다.- 리본 메뉴에서 수식 탭을 엽니다.
- 수식 계산을 선택합니다.
- 수식이 계산되는 순서를 따라가며 숫자 대신 텍스트가 들어간 부분, 잘못된 날짜, 오류가 포함된 참조 셀을 확인합니다.
- 원인이 되는 셀을 수정한 뒤 수식 결과가 정상으로 바뀌는지 확인합니다.
특히 여러 셀을 더하거나 곱하는 수식은 어느 한 셀의 값만 잘못되어도 전체 결과가 #VALUE!가 될 수 있습니다. 수식 전체를 한 번에 고치려고 하기보다 참조 셀을 하나씩 분리해 확인하는 편이 빠릅니다.
2. 숫자가 텍스트로 저장됐는지 확인하기
화면에는 1000처럼 보여도 셀 내부 값이 텍스트일 수 있습니다. 다른 프로그램이나 웹 페이지에서 복사한 데이터, 가져오기 작업으로 생성한 데이터에서 자주 발생합니다.
확인용으로 빈 셀에 다음 수식을 입력합니다.
=ISTEXT(A1)
결과가 TRUE이면 A1의 내용이 텍스트입니다. 숫자처럼 보이는 텍스트를 숫자로 바꾸는 방법은 다음과 같습니다.
- 셀에 표시되는 변환 안내가 있다면 숫자로 변환을 선택합니다.
- 숫자 형식으로 다시 입력하거나, 숫자 변환이 가능한 수식을 이용합니다.
- 데이터가 여러 개라면 복사한 숫자를 값으로 다시 붙여넣어 형식을 정리합니다.
예를 들어 다음 수식에서 A1 또는 B1 중 하나가 숫자 텍스트이면 오류가 날 수 있습니다.
=A1+B1
단순 합계라면 다음처럼 SUM을 사용하는 것이 더 안정적일 수 있습니다.
=SUM(A1:B1)
다만 SUM이 텍스트를 무조건 올바른 숫자로 변환한다는 뜻은 아닙니다. 텍스트가 숫자로 인식되지 않는 형태라면 먼저 원본 데이터를 숫자로 변환해야 합니다.
3. 공백과 숨은 문자 제거하기
셀 값의 앞뒤에 공백이 있거나 줄 바꿈·제어 문자 같은 숨은 문자가 포함되면 숫자 계산, 날짜 변환, 조회 수식이 실패할 수 있습니다. 눈으로는 정상처럼 보여도 복사한 데이터에는 이런 문자가 남아 있을 수 있습니다.
앞뒤 공백 정리
=TRIM(A1)
TRIM은 일반적인 앞뒤 공백과 단어 사이의 불필요한 공백을 정리할 때 사용합니다.
보이지 않는 문자 정리
=CLEAN(A1)
CLEAN은 인쇄되지 않는 문자로 인해 생기는 문제를 줄이는 데 사용합니다.
특정 문자를 바꾸거나 삭제하기
=REPLACE(A1, 1, 1, "")
위 수식은 A1의 첫 번째 문자부터 한 글자를 제거하는 예입니다. 실제 데이터에서는 제거하려는 위치와 글자 수를 확인해야 합니다. 특정 공백이나 기호를 한꺼번에 처리해야 한다면 찾기 및 바꾸기를 사용할 수 있습니다.
정리용 열에서 TRIM, CLEAN, REPLACE를 적용한 뒤 결과를 복사하고, 원본 범위에는 값만 붙여넣기로 반영하면 보조 수식이 남지 않습니다. 원본을 바로 덮어쓰기 전에 복사본을 만들어 두는 것이 안전합니다.
4. 직접 연산 대신 SUM·PRODUCT 사용하기
다음처럼 직접 연산을 사용하면 참조 셀에 텍스트나 공백이 포함된 순간 오류가 발생할 수 있습니다.
=A1+B1+C1
=A1*B1*C1
합계를 구하는 목적이라면 다음처럼 바꿔 볼 수 있습니다.
=SUM(A1:C1)
여러 값의 곱을 계산하는 경우에는 다음과 같이 PRODUCT를 사용할 수 있습니다.
=PRODUCT(A1:C1)
이 방법은 연산의 의도를 분명하게 하고 범위 계산을 간결하게 만들어 줍니다. 하지만 원본 데이터에 숫자가 아닌 설명 문구나 잘못된 기호가 섞여 있다면 함수로 바꾸는 것만으로 데이터 품질 문제가 완전히 해결되지는 않습니다.

5. 날짜 함수에서 #VALUE!가 발생하는 경우
DATEVALUE, DAYS 같은 날짜 함수에서 #VALUE!가 나오면 셀에 입력된 날짜가 실제 날짜 값인지 먼저 확인합니다. 날짜처럼 보이는 문자열이거나, 컴퓨터의 지역 날짜 형식과 입력된 날짜 순서가 다르면 날짜로 해석되지 않을 수 있습니다.
예를 들어 다음 수식에서 두 셀 중 하나가 유효한 날짜가 아니면 오류가 발생할 수 있습니다.
=DAYS(B1, A1)
다음 순서로 점검합니다.
- 날짜 셀을 선택하고 셀의 표시 형식이 날짜인지 확인합니다.
- 날짜가 다른 프로그램에서 복사된 값이라면 텍스트로 저장됐는지 확인합니다.
DATEVALUE를 사용 중이라면 입력된 날짜 문자열이 Excel에서 인식할 수 있는 형식인지 확인합니다.- 컴퓨터의 지역 날짜 설정과 셀에 입력한 날짜 형식이 서로 다른지 확인합니다.
- 날짜를 다시 입력하거나 유효한 날짜 값으로 변환한 뒤 수식을 다시 계산합니다.
날짜 형식은 단순히 셀 모양만 바꾸는 문제와 실제 값이 날짜로 저장되지 않은 문제를 구분해야 합니다. 표시 형식을 날짜로 변경했는데도 오류가 계속되면 셀 내부 값이 텍스트일 가능성이 큽니다.
6. VLOOKUP에서 발생하는 #VALUE! 점검하기
VLOOKUP에서는 조회값과 열 번호 인수를 확인해야 합니다. Microsoft 공식 안내에 따르면 다음과 같은 경우 #VALUE!가 발생할 수 있습니다.
- 조회값이 255자를 초과하는 경우
col_index_num이 텍스트로 입력된 경우col_index_num이 1보다 작은 경우
예시 수식은 다음과 같습니다.
=VLOOKUP(A2, E:H, 3, FALSE)
여기서 세 번째 인수인 3은 조회 범위의 세 번째 열을 뜻합니다. 이 값이 "3"처럼 텍스트로 들어갔거나 0 또는 음수라면 오류 원인이 될 수 있으므로 숫자 인수인지 확인합니다.
조회값이 지나치게 긴 데이터라면 VLOOKUP 대신 INDEX와 MATCH 조합을 검토할 수 있습니다. 다만 대체 수식을 적용하기 전에 조회값의 불필요한 공백과 숨은 문자를 먼저 정리하는 것이 좋습니다.
7. IFERROR는 마지막 표시 처리에 사용하기
오류가 발생했을 때 빈칸이나 안내 문구를 표시하려면 IFERROR를 사용할 수 있습니다.
=IFERROR(A1/B1, "확인 필요")
하지만 IFERROR는 오류의 원인을 고치지 않습니다. 숫자 형식 오류, 잘못된 참조, 날짜 변환 실패 등 서로 다른 문제를 모두 같은 결과로 숨길 수 있습니다. 따라서 다음 순서를 권장합니다.
- 원래 수식으로 오류 원인을 확인합니다.
- 숫자·텍스트·공백·날짜·참조 범위를 수정합니다.
- 정상적으로 계산되는지 확인합니다.
- 보고서에서 오류 대신 다른 표시가 꼭 필요할 때만
IFERROR를 추가합니다.
해결되지 않을 때 확인할 것
수식을 고쳤는데도 오류가 남는 경우
수식이 참조하는 다른 셀에 이미 #VALUE!가 들어 있는지 확인합니다. 오류가 포함된 셀을 참조하면 현재 수식도 같은 오류를 반환할 수 있습니다.
숫자로 변환했는데 계산되지 않는 경우
숫자 앞뒤의 공백, 줄 바꿈, 통화 기호, 단위 문자 등이 남아 있을 수 있습니다. TRIM, CLEAN, REPLACE 또는 찾기 및 바꾸기로 불필요한 문자를 제거한 뒤 다시 숫자로 변환합니다.
날짜 함수만 계속 실패하는 경우
날짜 입력 형식과 시스템의 지역 날짜 설정이 맞는지 확인합니다. 날짜의 표시 형식만 바꾼 상태라면 실제로는 텍스트일 수 있으므로 날짜 값을 다시 입력하거나 올바른 날짜 값으로 변환해야 합니다.
다른 사람의 파일에서만 오류가 나는 경우
원본 데이터가 복사·붙여넣기 과정에서 텍스트로 바뀌었거나 숨은 문자가 포함됐을 수 있습니다. 원본 범위를 별도 시트에 복사한 뒤 정리용 열에서 변환하고, 검증 후 값만 붙여넣는 방식이 안전합니다.
주의사항
- 원본 데이터를 바로 삭제하거나 덮어쓰기 전에 복사본을 보관합니다.
IFERROR로 오류를 숨기기 전에 실제 계산 결과가 맞는지 확인합니다.- 셀의 표시 형식만 바꿔도 내부 값의 형식이 자동으로 해결되는 것은 아닙니다.
SUM이나PRODUCT로 수식을 바꾸더라도 잘못된 원본 문자까지 정상적인 숫자로 바뀌는 것은 아닙니다.- VLOOKUP의 열 번호는 조회 범위 안의 실제 열 위치와 일치해야 합니다.
공식 참고자료
FAQ
#VALUE!와 #N/A는 같은 오류인가요?
아닙니다. #VALUE!는 수식에 들어간 값의 형식이나 인수가 맞지 않을 때 주로 발생합니다. #N/A는 조회 결과를 찾지 못한 상황과 관련되는 경우가 많습니다. 오류 코드가 다르면 먼저 원인도 다르게 접근해야 합니다.
셀이 숫자로 보이는데 왜 더하기에서 오류가 나나요?
셀에 저장된 값이 숫자가 아니라 텍스트일 수 있습니다. ISTEXT로 확인하고, 공백이나 숨은 문자를 제거한 뒤 숫자로 변환해야 합니다.
빈 셀이 포함돼도 항상 #VALUE!가 발생하나요?
항상 그런 것은 아닙니다. 수식과 함수가 빈 셀을 처리하는 방식이 다르며, 빈 셀처럼 보이지만 실제로는 공백 문자나 텍스트가 들어 있는 경우에는 오류가 날 수 있습니다.
날짜 셀의 표시 형식을 날짜로 바꾸면 해결되나요?
표시 형식만 바꾸는 것으로는 충분하지 않을 수 있습니다. 날짜가 텍스트로 저장됐거나 시스템 지역 날짜 형식과 맞지 않으면 실제 날짜 값으로 변환해야 합니다.
IFERROR로 감싸면 오류가 해결된 것 아닌가요?
표시만 바뀐 것입니다. 계산에 사용된 값이나 수식의 원인은 그대로 남아 있으므로, 원인 확인과 데이터 수정을 먼저 해야 합니다.
마무리
엑셀 #VALUE 오류 원인과 해결 방법의 핵심은 오류 셀 자체보다 수식이 참조하는 값의 형식을 확인하는 데 있습니다. 숫자가 텍스트로 저장됐는지, 공백과 숨은 문자가 있는지, 날짜가 유효한지, VLOOKUP의 인수가 올바른지 순서대로 점검하면 대부분의 오류를 원인부터 해결할 수 있습니다.