엑셀 함수 한글·영어 혼용 오류 완벽 해결 가이드

이 글의 목적은 엑셀 수식에서 한글과 영어가 섞여 발생하는 오류를 체계적으로 진단하고, 로케일·구분기호·함수명 차이로 인한 문제를 근본적으로 해결하는 실무 절차를 제공하는 것이다.



왜 ‘한글·영어 혼용’이 문제가 되는가

엑셀 수식 동작은 운영체제 지역설정, 엑셀 표기 언어, 구분기호 규칙에 의존한다. 동일한 수식이라도 함수명, 인수 구분기호, 소수점·천 단위 기호가 다르면 오류가 발생한다. 특히 공동 작업에서 한국어 환경과 영어 환경이 혼재할 때 #NAME? , #VALUE! , “함수 이름이 올바르지 않습니다” 같은 오류가 빈발한다.

주의 : 엑셀은 내부적으로 함수 ID를 사용하지만 수식 편집 시에는 ‘표시 언어’의 함수명과 구분기호 규칙을 따른다. 표시 언어와 파일 작성 환경이 다르면 동일 파일에서도 오류가 재현된다.

오류 유형 빠른 진단표

증상 가능 원인 우선 조치
#NAME? 또는 “알 수 없는 함수” 함수명이 환경과 불일치하거나 추가기능 함수 미설치 함수 삽입 대화상자로 동일 기능 함수 선택 후 자동 치환
수식은 있는데 결과가 텍스트로 남음 쉼표·세미콜론 등 인수 구분기호 불일치 현재 환경의 인수 구분기호로 일괄 치환
숫자 계산이 틀림 또는 #VALUE! 소수점·천 단위 기호 혼재(예: 1,23 vs 1.23) 엑셀 ‘시스템 구분기호 사용’ 해제 후 통일
날짜가 텍스트로 인식 로케일별 날짜 형식 차이(예: 2025-10-09 vs 10/09/2025) 데이터->텍스트 나누기 또는 Power Query 로케일 지정
CSV/TXT 가져오기 후 대량 오류 파일 인코딩·구분자·소수점 설정 불일치 Power Query로 ‘파일 원본 로케일’ 명시 가져오기

핵심 원인 1: 함수명 표시 언어 불일치

공유 파일을 다른 표시 언어에서 열면 동일 기능의 함수라도 표기명이 달라진다. 환경이 다르면 수식 입력 시 알 수 없는 함수로 인식할 수 있다. 가장 안전한 방법은 ‘함수 삽입’ 대화상자를 통해 시스템이 인식하는 정확한 함수명을 선택하는 것이다.

  
예: VLOOKUP( )를 사용하는 파일을 다른 표시 언어에서 열 때 - 함수 삽입(Shift+F3) → 검색에 기능 설명 입력 → 제시 함수 선택 → 인수 채우기 → 확인 - 기존 수식은 환경에 맞는 함수명으로 자동 반영됨 
  
주의 : 수식막대에 직접 영문 함수를 입력하면 환경에 따라 #NAME?가 발생할 수 있다. 함수 삽입 또는 자동완성 목록에서 선택하는 습관을 권장한다.

핵심 원인 2: 인수 구분기호(쉼표 vs 세미콜론)

엑셀은 지역설정에 따라 인수 구분기호로 쉼표( , ) 또는 세미콜론( ; )을 사용한다. 소수점에 쉼표를 쓰는 환경에서는 인수 구분기호로 세미콜론을 쓰는 경우가 많다. 수식의 구분기호가 맞지 않으면 수식이 텍스트처럼 취급되거나 오류가 난다.

  
영문권 예시: =SUM(1, 2,
3) 일부 유럽/기타 환경: =SUM(1; 2;
3) 
  

대량 변환은 바꿀 내용(Ctrl+H)로 안전하게 처리한다. 단, 함수 안의 텍스트에서 쉼표를 잘못 치환하지 않도록 범위를 제한한다.

  
찾을 내용: , 바꿀 내용: ; 대상: 선택 영역 또는 수식 입력 열 
  
주의 : 표나 Power Query에서 생성된 수식, 또는 동적 배열(@, # 포함) 수식은 단순 치환으로 깨질 수 있다. 샘플 사본에서 먼저 검증한다.

핵심 원인 3: 소수점·천 단위 구분기호 충돌

소수점이 . 인지 , 인지가 다른 환경이 섞이면 숫자가 텍스트로 바뀌어 계산이 실패한다. 다음 절차로 통일한다.

  1. 파일->옵션->고급->‘시스템 구분기호 사용’ 체크 해제한다.
  2. 소수 구분기호와 천 단위 기호를 프로젝트 기준으로 지정한다.
  3. 데이터 정규화: 텍스트를 숫자로 변환(‘데이터’->텍스트 나누기->마침) 또는 VALUE/TEXT 함수를 이용한다.
  
=VALUE(SUBSTITUTE(A2; ","; ".")) ' 소수점이 쉼표인 데이터를 점으로 정규화하는 예 
  

혼용 환경에서의 안전한 수식 작성 원칙

  • 함수는 자동완성 목록에서 선택한다.
  • 인수 구분기호는 현재 환경 규칙을 따른다.
  • 숫자 리터럴에는 천 단위 구분기호를 쓰지 않는다.
  • 날짜는 DATE(연;월;일)로 생성해 로케일 영향을 회피한다.
  • 텍스트-숫자 혼입 데이터는 먼저 정규화한 뒤 계산한다.
  
=DATE(2025; 10;
9) + 7 =TEXT(DATE(2025;10;9); "yyyy-mm-dd") 
  

공동 작업을 위한 환경 표준화 체크리스트

항목 권장 기준 검증 방법
엑셀 표시 언어 팀 표준 1개로 통일 파일->옵션->언어 또는 Office 언어 기본값 확인
인수 구분기호 쉼표 또는 세미콜론 중 택일 샘플 수식 =SUM(1,2) 또는 =SUM(1;2)로 확인
소수점·천 단위 소수점 ‘.’, 천 단위 ‘,’ 등 프로젝트 표준 고정 옵션->고급->시스템 구분기호 사용 해제 후 지정
날짜 포맷 yyyy-mm-dd 등 ISO 계열 셀 서식 사용자 지정과 TEXT 함수 결과 일치 확인
데이터 가져오기 Power Query로 원본 로케일 명시 쿼리 편집기->소스 단계 로케일 확인

Power Query로 CSV/텍스트 안전 가져오기

서로 다른 로케일에서 만든 CSV는 구분자와 소수점 규칙이 다를 수 있다. Power Query를 사용하면 파일 원본 로케일과 구분자, 인코딩을 명시적으로 설정할 수 있다.

  
데이터 → 데이터 가져오기 → 텍스트/CSV에서 → 파일 선택 → ‘데이터 형식 감지’ 옵션 확인 → ‘데이터 형식’과 ‘구분 기호’ 수동 지정 → ‘로케일’ 선택(예: 영어(미국), 한국어(대한민국)) → 변환 후 로드 
  
주의 : CSV를 더블클릭으로 직접 열면 윈도우 지역설정에 따라 자동 해석되어 숫자·날짜가 깨질 수 있다. 항상 ‘데이터 가져오기’ 경로로 로케일을 지정한다.

오류 예제와 교정 패턴

다음은 혼용으로 발생하는 대표 오류와 교정 예이다.

  
' 잘못된 예: 쉼표 인수 구분기호를 요구하는 환경에서 세미콜론 사용 =SUM(1; 2;
3) → =SUM(1, 2,
3)
' 잘못된 예: 소수점 기호 충돌
=1,23 + 4,56 → SUBSTITUTE로 점으로 교정 후 VALUE
=VALUE(SUBSTITUTE("1,23"; ","; ".")) + VALUE(SUBSTITUTE("4,56"; ","; "."))

' 안전한 날짜 생성
="2025-10-09" + 7 → =DATE(2025;10;9) + 7

  

대량 치환을 위한 안전 작업 순서

  1. 원본 백업본을 별도 저장한다.
  2. 공식·데이터 범위를 분리한다(수식 범위만 선택).
  3. 수식 내 텍스트 리터럴을 임시 토큰으로 보호한다(필요 시).
  4. 인수 구분기호를 일괄 치환한다.
  5. 소수점·천 단위 변환은 데이터 열에서만 수행한다.
  6. 샘플 계산값 스냅샷과 비교한다.
  
예: 텍스트 보호 토큰화(고급 사용자)
1) "서울,부산" → "§서울,부산§"
2) 쉼표→세미콜론 치환
3) 토큰 원복: "§서울,부산§" → "서울,부산" 
  

동적 배열 수식과 혼용

동적 배열 환경에서는 자동 채움이 발생하므로 구분기호 또는 함수명이 다르면 전체 스필 범위가 오류로 채워진다. 다음 원칙을 따른다.

  • 스필 수식은 먼저 작은 샘플 범위로 검증한다.
  • 배열 상수에서 구분기호 형식({1,2,3} vs {1;2;3})을 환경에 맞춘다.
  • 범위 참조를 명확히 하고 암시적 교차 연산자(@)를 남발하지 않는다.
  
=SUMPRODUCT( --(ISNUMBER(SEARCH("키워드"; A2:A1000))) ) 
  

수식 보호와 배포 전략

프로젝트마다 ‘표준 수식 규격’을 정해 파일 머리글 시트에 명시한다. 배포 전 검증 체크리스트를 포함하고, 외부 협력사에는 동일 규격의 샘플 파일과 작성 요령을 제공한다.

배포 전 점검 합격 기준
로케일 의존 요소 제거 DATE, TEXT, VALUE 등으로 통일
구분기호 일관성 수식 100% 동일 규칙
Power Query 소스 로케일 쿼리 단계에 명시
테스트 시트 포함 예상값 대 비교값 PASS

수식 자동 교정 도구 샘플(VBA)

다음 코드는 현재 환경에서 요구하는 인수 구분기호로 선택영역 수식을 교정하는 예이다. 사본에서만 실행한다.

  
Option Explicit Sub FixArgSeparators() Dim rng As Range, c As Range Dim argSep As String, otherSep As String argSep = Application.International(xlListSeparator) otherSep = IIf(argSep = "," , ";" , ",") If TypeName(Selection) <> "Range" Then Exit Sub Set rng = Selection.SpecialCells(xlCellTypeFormulas) For Each c In rng.Cells ' 텍스트 리터럴 보호 간단 처리: 큰따옴표 구간은 스킵(고급 처리는 정규식 필요) Dim f As String: f = c.Formula If InStr(1, f, otherSep, vbTextCompare) > 0 Then c.Formula = Replace(f, otherSep, argSep) End If Next c End Sub 
  
주의 : 위 코드는 따옴표 내부의 구분기호까지 단순 치환할 수 있다. 실제 업무에는 정규식으로 텍스트 구간을 제외하거나, 수식 파서 사용을 권장한다.

날짜·숫자 정규화 유틸리티 함수

  
=LET(_x; SUBSTITUTE(A2; ","; "."); VALUE(_x)) =DATE(VALUE(LEFT(B2;4)); VALUE(MID(B2;6;2)); VALUE(RIGHT(B2;2))) 
  

상기 패턴으로 지역 의존성을 제거하면 혼용 환경에서도 동일한 결과를 얻는다.

감사·추적 가능성 확보

혼용 오류는 파일 히스토리와 지역설정 변경 기록이 없으면 재현이 어렵다. 품질관리 관점에서 다음을 권장한다.

  • 버전명에 ‘로케일·구분기호’ 메타정보를 포함한다.
  • 변경 로그에 환경 변경 사실을 기록한다.
  • 테스트 케이스에 다른 로케일 시뮬레이션을 포함한다.

현장 적용 체크리스트(요약)

  1. 현재 환경의 인수 구분기호와 소수점 규칙을 확인한다.
  2. 수식은 함수 삽입 또는 자동완성으로 입력한다.
  3. 날짜는 DATE, 텍스트 변환은 VALUE/TEXT로 표준화한다.
  4. 외부 데이터는 Power Query로 로케일 지정 후 로드한다.
  5. 대량 치환은 사본에서 시행하고 단위 테스트를 통과시킨다.

FAQ

파일을 열면 수식이 텍스트로 보이고 결과가 계산되지 않는다.

인수 구분기호가 맞지 않아 수식이 텍스트로 인식된 것이다. 현재 환경의 리스트 구분기호를 확인한 뒤 바꿀 내용(Ctrl+H)으로 일괄 교정하고, 샘플 계산값과 대조한다.

#NAME?가 대량 발생한다.

함수명 표기 불일치 가능성이 높다. 함수 삽입 대화상자로 동일 기능 함수를 선택해 한 개 수식을 정상화한 후, 해당 패턴을 다른 셀에 적용한다. 추가기능이나 사용자 정의 함수가 빠진 경우 참조 추가 또는 추가기능 재설치가 필요하다.

CSV를 열면 숫자가 깨진다.

더블클릭으로 열지 말고 데이터->텍스트/CSV에서 가져오기를 사용해 구분자·로케일·인코딩을 명시한다. 소수점과 천 단위 규칙도 함께 지정한다.

다국어 협업에서 가장 안전한 입력법은 무엇인가?

함수는 자동완성에서 선택하고, 날짜는 DATE로 생성하며, 숫자 리터럴은 천 단위를 제거한다. 외부 데이터는 Power Query로 로케일을 고정하여 가져오는 절차가 가장 안전하다.

맥과 윈도우 사이에서도 같은 문제가 생기나?
맥과 윈도우 사이에서도 같은 문제가 생기나?

가능하다. 운영체제 지역설정과 엑셀 옵션이 서로 다르면 동일 현상이 발생한다. 각 플랫폼에서 구분기호와 표시 언어를 동일하게 맞추면 문제를 줄일 수 있다.