CSV의 쉼표와 줄바꿈 때문에 열이 밀릴 때 따옴표 규칙을 확인하는 법
주소·메모·상품명 안의 쉼표와 줄바꿈이 새 열이나 새 행으로 오인되는 문제를 원문 구조에서 찾는 절차입니다.
오류가 시작된 첫 행의 필드 수를 세어보세요
CSV에서 쉼표는 보통 열 구분자이므로 값 자체에 쉼표가 들어가면 해당 필드를 큰따옴표로 감싸야 합니다. RFC 4180은 쉼표, 큰따옴표, 줄바꿈이 포함된 필드를 큰따옴표로 감싸고, 값 안의 큰따옴표는 두 번 써서 이스케이프하도록 설명합니다. 이 규칙이 깨지면 파서는 메모 속 쉼표를 새 열로 해석할 수 있습니다.
정상 행 하나와 오류가 시작된 첫 행을 텍스트 편집기에서 비교합니다. 헤더 열 수와 각 행의 필드 수가 같은지 보고, 주소·상품명·자유 입력 메모처럼 쉼표가 들어갈 열을 먼저 찾습니다. 파일 전체를 수동 수정하기 전에 어떤 프로그램이 잘못 내보냈는지 확인해야 같은 오류가 반복되지 않습니다.
- 헤더 열 수 기록
- 오류가 시작된 첫 행 찾기
- 값 안의 쉼표와 큰따옴표 확인
- 원본 생성 프로그램 기록
줄바꿈이 포함된 셀은 레코드 경계와 구분해야 합니다
메모 셀 안의 줄바꿈은 큰따옴표로 감싼 필드 안에서는 하나의 값으로 저장될 수 있습니다. 그러나 내보내기 과정에서 감싸는 따옴표가 빠지면 다음 줄이 새 레코드로 인식됩니다. 텍스트 편집기에서 여러 줄에 걸친 값의 시작과 끝 따옴표가 짝을 이루는지 확인합니다.
따옴표 개수가 홀수이거나 값 안의 따옴표가 두 번 표시되지 않았다면 해당 행만 임의로 이어 붙이지 않습니다. 본문 줄바꿈인지 실제 다음 레코드인지 업무 내용을 알아야 구분할 수 있기 때문입니다. 원천 시스템에서 CSV를 다시 내보내거나 XLSX처럼 셀 구조를 보존하는 형식으로 전달받는 편이 안전합니다.
- 여러 줄 필드의 시작·끝 따옴표 확인
- 값 내부 따옴표가 두 번 기록됐는지 확인
- 판단할 수 없는 행은 임의 병합 금지
- 가능하면 XLSX 원본 요청
수정 뒤에는 구조와 업무 검산값을 함께 비교하세요
문법만 고친 뒤에는 모든 데이터 행의 필드 수가 헤더와 같은지 검사합니다. Microsoft의 텍스트·CSV 가져오기 화면에서 구분자를 선택하고 미리보기를 보면 열이 어디서 갈라지는지 확인할 수 있습니다. 지역 설정 때문에 쉼표 대신 세미콜론이 구분자로 쓰인 파일도 있으므로 실제 반복 문자를 보고 결정합니다.
구조 검사를 통과해도 값이 맞는 것은 아닙니다. 원본과 결과의 행 수, 주문번호 개수, 금액 합계, 날짜 범위를 비교합니다. 결과 행 수가 늘거나 줄고 그 차이를 설명할 수 없다면 병합·중복 제거·시스템 업로드를 중단합니다. 수정된 파일과 원본은 별도 보관하고 어떤 규칙을 고쳤는지 기록합니다.
- 모든 행의 필드 수 검사
- 가져오기 미리보기에서 구분자 확인
- 행 수·고유키·금액 합계 비교
- 설명되지 않는 차이가 있으면 사용 중단
이 방법으로 해결되지 않는 경우
- 문법이 깨진 자유 입력 문장의 실제 레코드 경계를 자동 추정하지 않습니다.
- 쉼표·세미콜론·탭이 혼합된 비표준 파일을 완전하게 복구하지 않습니다.
- 구조가 정상이어도 값의 업무상 의미와 정확성을 보장하지 않습니다.
바로 실행하기
CSV를 엑셀로 변환 열기 →여러 CSV 세로로 합치기 열기 →근거 자료
형식과 기능 설명은 아래 공식 문서와 표준을 우선 확인했습니다.