CSV는 셀 서식을 담은 통합문서가 아닙니다

CSV는 행과 값의 경계를 문자로 표현하는 형식입니다. 숫자처럼 보이는 값이 식별 코드인지 계산할 수량인지까지 항상 명확하게 전달하지는 못합니다. 날짜도 지역 설정에 따라 다르게 읽힐 수 있어 파일을 연 순간의 모양만 믿기 어렵습니다.

원본 CSV를 따로 보존하고 작업 결과는 다른 이름으로 저장합니다. 처음 열자마자 깨진 상태로 원본을 덮어쓰면 내보낸 값과 가져오기 과정의 변형을 구분하기 어려워집니다. 가능하면 내보낸 시스템의 열 정의와 인코딩 안내를 함께 확보하세요.

문자·열 경계·값의 뜻을 순서대로 봅니다

증상 확인할 설정 판단 기준
한글만 깨짐 문자 인코딩 같은 이름이 읽히는지
한 줄이 한 셀에 들어감 쉼표·탭 등 구분자 예상 열 수와 일치하는지
00125가125가 됨 열 데이터 형식 식별 코드라면 텍스트로 유지
03/04가 다른 날짜가 됨 날짜 해석·지역 형식 제공자가 뜻한 연월일 확인
긴 번호가 다른 숫자로 보임 자동 숫자 변환 계산값이 아닌 코드는 원문 비교

이 문제들은 동시에 나타날 수 있습니다. 인코딩을 고쳐 한글이 읽힌 뒤에도 코드와 날짜를 다시 점검해야 합니다. 반대로 숫자 형식을 바꾸어도 잘못 해석된 문자 인코딩이 복구되는 것은 아닙니다.

더블클릭 대신 가져오기 미리보기를 사용합니다

Microsoft의 공식 안내는 텍스트·CSV 파일을 가져오고 구분자를 확인하는 절차를 제공합니다. 사용하는 Excel 버전에서 데이터 가져오기 또는 텍스트/CSV 가져오기 기능을 찾고, 미리보기에서 인코딩과 열 분리를 확인합니다. 메뉴가 다르면 버전별 공식 안내를 참고하세요.

첫 줄이 머리글인지 실제 데이터인지도 봅니다. 첫 행을 제목으로 잘못 승격하면 데이터 한 건이 사라질 수 있고, 머리글을 데이터로 읽으면 행 수가 하나 늘어납니다. 제공받은 데이터의 행 수를 알고 있다면 이 차이를 비교할 수 있습니다.

주소나 설명에 쉼표가 포함된 파일은 따옴표 처리도 중요합니다. 단순히 쉼표가 많다고 열이 여러 개라고 판단하면 안 됩니다. 미리보기에서 설명 한 문장이 한 열에 유지되는지 보고, 파일을 임의로 전체 찾아 바꾸기 하기 전에 형식에 맞게 읽히는지 확인하세요.

식별 코드와 계산값을 분리합니다

우편번호, 사번, 품목코드, 예약 식별자는 숫자로만 보여도 덧셈할 값이 아닐 수 있습니다. 앞자리 0과 자릿수를 유지해야 한다면 가져올 때 텍스트로 다루는 편이 적합합니다. 수량과 금액처럼 계산할 열은 숫자로 읽되 통화 기호·천 단위 구분이 어떻게 처리됐는지 확인합니다.

이미0이 사라진 뒤 표시 형식만 다섯 자리로 만들면 모든 코드가 복원됐다고 볼 수 없습니다. 원래 자릿수가 일정하다는 근거가 없으면 다른 코드를 만들어낼 수 있습니다. 원본 CSV와 제공 시스템의 정의를 기준으로 다시 가져오는 편이 안전합니다.

긴 숫자 문자열은 화면의 지수 표기 문제와 실제 값의 변경을 구분해야 합니다. 화면만 넓혀 숫자가 길게 보인다고 원문과 같다는 뜻은 아닙니다. 셀 값과 원본 문자열을 대조하고 식별 정보는 처음부터 텍스트로 유지하세요.

네 열·세 행으로 먼저 시험하는 예시

전체 파일을 처리하기 전에 문제가 잘 드러나는 몇 행을 골라 사본에서 확인할 수 있습니다. 다음은 실제 고객 정보가 아닌 설명용 값입니다. 코드는 텍스트, 수량은 숫자, 기준일은 제공자가 정한 날짜라는 역할을 먼저 정합니다.

코드 이름 수량 기준일
00125 한글 품목A 2 2026-09-27
00007 쉼표가 있는 설명, B 0 2026-10-03
A-003 기호 포함 품목 12 2026-11-04

확인할 것은 세 가지입니다. 00125의0이 남아 있는지, 쉼표를 포함한 설명이 한 셀에 유지되는지, 기준일의 월과 일이 원문과 같은지 봅니다. 수량0을 빈칸으로 바꾸지 않아야 “없음”과 “미입력”의 의미가 보존됩니다. 이 표를 통과해도 전체 자료의 모든 예외가 해결된 것은 아니므로 마지막 행과 길이가 긴 항목도 추가 확인합니다.

날짜와 빈칸에는 별도의 규칙을 둡니다

03/04처럼 연도가 없고 월·일이 모호한 값은 추측해서 변환하지 않습니다. 제공자에게 형식을 확인하거나 원문 텍스트로 보존합니다. 날짜를 통일할 때는 모양뿐 아니라 값이 가리키는 날이 같아야 합니다. 표시 형식만 바꾸는 것과 실제 날짜로 변환하는 것은 다릅니다.

빈칸, 0, 해당없음, 미확인은 서로 다른 상태일 수 있습니다. 집계를 편하게 하려고 모두0으로 채우면 평균이나 합계가 달라집니다. 어떤 값이 결측이고 어떤 값이 실제0인지 열 설명에 남기세요. 숫자 열에 설명 문구가 섞여 있으면 원문 열과 정리한 계산용 열을 나누는 방법도 있습니다.

줄바꿈이 포함된 설명이나 여러 줄 메모가 있다면 행 수가 겉보기와 달라질 수 있습니다. 텍스트 편집기의 줄 수만으로 거래 건수를 계산하지 말고 정상적으로 파싱된 데이터 행 수를 기준으로 확인합니다.

저장 후 다시 열어 왕복 검사를 합니다

정리한 파일을 XLSX로 저장할지 다시CSV로 내보낼지는 받는 시스템의 요구에 따릅니다. CSV로 다시 내보내면 서식과 여러 시트 구조를 그대로 유지할 수 없으므로 전달할 시트와 범위를 확인합니다. 원본, 작업본, 전달본의 이름을 구별해 두세요.

최종 CSV를 다시 가져와 앞자리0, 한글, 쉼표 포함 문장, 날짜, 빈칸을 재확인합니다. 작업 화면에서 정상인 것과 내보낸 파일이 정상인 것은 다른 단계입니다. 전체 행 수와 핵심 수량 합계를 함께 비교하면 일부 누락을 찾는 데 도움이 됩니다.

완료 기준은 오류 메시지가 없는 것이 아닙니다. 문자와 열 구조가 읽히고, 코드의 모양과 계산값의 뜻이 유지되며, 다시 열어도 같은 결과가 나와야 합니다. 이 확인을 남기면 데이터 제공자에게 문제가 원본인지 가져오기 설정인지 구체적으로 설명할 수 있습니다.

00123과 1-2를 원래 문자로 유지하는 연습

사이트에서 만든 시험 CSV에는 한글 이름, 코드 00123, 문자 1-2, 쉼표가 포함된 메모를 넣었습니다. 실제 고객 명단 대신 이 작은 파일로 가져오기 설정을 비교할 수 있습니다.

  1. 시험 CSV의 원문을 텍스트로 열어 코드와 메모를 확인합니다.
  2. 엑셀의 텍스트·CSV 가져오기에서 UTF-8과 쉼표를 선택하고 코드·문자 열을 텍스트로 지정합니다.
  3. 가져온 뒤 코드 길이·한글·행 수·쉼표 메모가 원문과 같은지 확인합니다.

작성 예시

필드 원래 값 확인할 결과
코드 00123 앞자리 0을 포함한 다섯 글자
분류 문자 1-2 날짜로 변환되지 않음
메모 회의자료, 최종 한 셀 안 쉼표 유지

진행이 막혔을 때 이미 변환된 파일을 저장해 원본을 덮어쓰지 마세요. 원래 CSV로 돌아가 열 형식을 바꿔 다시 가져옵니다. 긴 식별번호를 계산용 숫자로 변환하면 원래 자릿수를 복원하기 어려울 수 있습니다.

한글·코드 시험 CSV 받기

이 글의 작성용 점검지 받기 · TXT

확인한 자료와 적용 범위

함께 해결할 다음 문제

본문 개정: 2026년 10월 26일 · 오류·변경 사항 알리기