Windows용 Excel에서 CSV 인코딩·구분 기호·열 데이터 형식을 지정해 한글 깨짐과 식별번호 손실을 구분하고, 원본을 보존하며 가져오는 방법입니다.
CSV를 Excel에서 열었더니 이름이 깨지거나 상품코드 00123이 123으로 바뀌었다면, 두 문제를 같은 원인으로 처리하지 마세요. 한글 깨짐은 문자 인코딩, 앞자리 0·긴 번호 변화는 열의 데이터 형식부터 확인합니다. 모든 값이 한 칸에 들어갔다면 구분 기호도 별도로 살펴봐야 합니다.
원본 CSV를 보존한 상태에서 빈 통합 문서를 열고 데이터 → 텍스트/CSV에서로 가져오는 것이 출발점입니다. 더블 클릭으로 바로 여는 대신 미리보기에서 문자를 읽는 방식과 열 구분을 지정하고, 필요한 열을 텍스트로 정한 뒤 로드하세요. 이 글은 해당 가져오기 기능이 있는 Windows용 데스크톱 Excel 기준입니다.
원본을 다시 가져와 문자와 열 구분부터 맞추기
이미 잘못 열린 CSV에 그대로 저장하지 마세요. 현재 Excel 화면에서 데이터가 달라졌더라도 저장 전 원본에는 원래 값이 남아 있을 수 있습니다. 사본을 마련하고 아래 순서로 다시 가져옵니다.
빈 통합 문서의 데이터 → 텍스트/CSV에서를 선택합니다. 화면에 따라 데이터 가져오기 → 파일에서 → 텍스트/CSV로 표시될 수 있습니다.
원본 CSV를 선택합니다.
미리보기의 **파일 원본(File Origin)**에서 실제 파일의 문자 인코딩을 확인합니다.
**구분 기호(Delimiter)**를 맞추고 각 열이 의도대로 나뉘는지 확인합니다.
번호·코드 열의 형식을 정해야 한다면 바로 로드하지 않고 **데이터 변환(Transform Data)**으로 진행합니다.
Microsoft는 UTF-8 CSV가 BOM과 함께 저장돼 있으면 정상적으로 열 수 있으며, 그렇지 않은 경우 Power Query 등의 가져오기 경로를 안내합니다. Microsoft UTF-8 CSV 열기 안내
UTF-8 파일이라면 그에 맞는 인코딩을 선택하되, 모든 CSV를 UTF-8로 단정하지 않습니다. 제공한 시스템이나 파일 생성자의 설명과 미리보기에서 읽히는 문자를 비교하세요. Power Query Text/CSV 문서는 파일 원본·구분 기호·데이터 형식 감지 옵션을 구분하며, 감지가 틀릴 수 있으므로 로드 전 설정 확인을 안내합니다.
한글이 정상인데 이름·주소·금액이 한 열에 붙어 있으면 인코딩을 계속 바꾸기보다 구분 기호를 확인합니다. 반대로 열이 잘 나뉘어도 한글이 깨졌다면 구분 기호만 바꿔 해결됐다고 판단할 수 없습니다.
계산할 숫자와 보존할 식별번호는 다른 형식
전화번호·우편번호·상품코드는 숫자로만 보이더라도 합계를 구하려는 값이 아닙니다. 원래 자릿수와 앞자리 0이 의미를 갖는 식별자라면 텍스트로 가져오는 편이 맞습니다. 금액·수량처럼 계산할 열까지 모두 텍스트로 바꾸는 것은 별도 문제를 만들 수 있습니다.
Power Query 편집기에서 해당 열을 선택하고 데이터 형식 → 텍스트로 지정합니다. 기존 형식 변경 단계를 바꿀 것인지 묻는 화면이 나오면 **현재 항목 바꾸기(Replace Current)**를 사용해 숫자로 변환하는 단계를 대체할 수 있습니다. 원래 앞자리 0이 미리보기에서 살아 있는지 확인한 뒤 닫기 및 로드합니다. Microsoft 앞자리 0·긴 숫자 보존 안내
가져오기 화면에 데이터 형식 자동 감지를 끄는 옵션이 있다면 일단 텍스트로 불러온 뒤 계산할 열만 적절한 형식으로 정하는 방법도 있습니다. 중요한 것은 변환으로 정보가 사라지기 전에 형식을 결정하는 것입니다.
나타난 변화
먼저 확인할 것
피할 행동
00123이 123으로 바뀜
원본 값과 열의 텍스트 형식
빠진 0의 개수를 추측해 일괄 추가
긴 식별번호가 달라짐
숫자 변환 전 원본과 전체 자릿수
표시 형식만 바꾸면 값도 돌아온다고 판단
날짜 같은 코드가 날짜로 변환됨
해당 열의 의미와 자동 변환
날짜처럼 보인다는 이유만으로 확정
수량 합계가 계산되지 않음
숫자 열이 텍스트로 남았는지
모든 열을 한꺼번에 숫자로 변경
Excel의 숫자 정밀도는 최대 15자리입니다. 16자리 이상 식별번호가 숫자로 들어가 정보가 손실됐다면 나중에 텍스트 표시로 바꿔도 원래 번호를 복원하지 못합니다. 원본 CSV나 제공 시스템에서 다시 가져와야 합니다. 1.23E+... 같은 표시만으로 손실을 단정하지는 말고, 원래 값 전체와 비교하세요.
셀의 사용자 지정 서식으로 0을 채워 보이게 하는 것과 원래 식별자를 보존하는 것도 다릅니다. 상품코드 길이가 일정하다는 근거 없이 00000 같은 서식을 적용하면, 없는 자릿수를 만들어낼 수 있습니다.
저장 형식까지 정해야 작업이 끝납니다
검토·계산·여러 시트를 유지할 작업이라면 원본과 다른 이름의 **Excel 통합 문서(.xlsx)**로 저장하는 방법을 검토하세요. 다른 시스템에 CSV를 다시 제출해야 한다면 그 시스템이 요구하는 인코딩과 구분 기호를 확인합니다.
Microsoft의 텍스트·CSV 가져오기와 내보내기 안내는 CSV 저장 시 현재 워크시트만 저장되고 지원되지 않는 기능이 손실될 수 있음을 설명합니다. 여러 시트·서식이 들어 있는 통합 문서를 CSV 하나로 내보냈다고 모든 작업이 보존되는 것은 아닙니다.
새로 만든 CSV는 원본을 덮어쓰지 말고 사본으로 저장해, 같은 가져오기 조건에서 다시 읽어보세요. 한글 항목 하나, 앞자리 0이 있는 코드 하나, 긴 식별번호 하나, 계산할 숫자 열을 골라 비교하면 문자·형식 문제를 나눠 확인할 수 있습니다.
전달할 때는 단순히 “Excel에서 잘 보인다”보다 어떤 인코딩·구분 기호로 저장했고 어느 열이 식별자인지를 함께 알려주세요. 받는 프로그램이 같은 값을 다르게 해석하는 일을 줄일 수 있습니다. 파일 확장자를 .xlsx로 이름만 바꾸는 것은 변환이 아니므로 확장자와 실제 파일 형식의 차이도 구분해야 합니다.