가이드

CSV 파일 엑셀에서 한 열로 열릴 때 — 원인과 열 나누기 방법

Opener 팀4분 분량

CSV를 열었더니 모든 내용이 A열 하나에 몰려 있다면, 파일이 Excel이 기대하는 것과 다른 구분자를 쓰고 있는 거예요. 보통은 세미콜론을 쓰도록 설정된 컴퓨터에서 쉼표로 구분된 파일을 열었거나, 그 반대인 경우예요. 데이터에는 아무 문제가 없어요. CSV 뷰어처럼 구분자를 자동으로 감지하는 도구로 열거나, Excel의 가져오기 또는 텍스트 나누기 기능으로 어떤 구분자를 쓸지 알려 주면 돼요.

쉼표, 세미콜론, 그리고 소수점 쉼표

“CSV”는 쉼표로 구분된 값(comma-separated values)이라는 뜻이지만, 실제로는 파일을 만든 프로그램이 정한 문자가 구분자가 돼요. 같은 행을 두 가지 방식으로 쓰면 이렇게 돼요.

날짜,거래처,금액
2024-03-15,Müller GmbH,1250.50
날짜;거래처;금액
2024-03-15;Müller GmbH;1250,50

두 번째 방식이 생긴 이유는 소수점 표기 때문이에요. 독일, 프랑스, 이탈리아, 스페인, 네덜란드, 폴란드, 우크라이나를 비롯한 유럽의 많은 나라에서는 숫자를 1250,50처럼 소수점 쉼표로 써요. 쉼표가 열 구분에도 쓰인다면 1250,50은 두 칸으로 갈라지겠죠. 그래서 이런 지역의 스프레드시트 프로그램은 대신 세미콜론을 열 구분자로 써요.

한국은 미국처럼 소수점에 마침표를 쓰기 때문에 한국 Windows의 Excel은 보통 쉼표를 기대해요. 그래서 유럽 거래처나 해외 서비스에서 받은 세미콜론 파일에서 이 문제를 자주 만나게 돼요.

어느 쪽도 틀린 형식은 아니에요. 서로 다른 두 가지 관례일 뿐이고, 한쪽 방식으로 쓴 파일을 다른 쪽을 기대하는 프로그램이 열 때 문제가 생겨요. 형식 자체에 대해 더 알고 싶다면 CSV 파일이란 무엇인지 읽어 보세요.

Excel이 모든 걸 A열에 넣는 이유

.csv 파일을 더블클릭하면 Excel은 파일 내용을 보고 구분자를 알아내지 않아요. 운영 체제의 국가별 설정에 있는 목록 구분 기호를 그대로 써요. Windows에서 이 설정은 지역을 따라가요. 소수점 쉼표를 쓰는 나라로 설정된 컴퓨터는 보통 목록 구분 기호가 세미콜론이고, 한국·미국·영국으로 설정된 컴퓨터는 쉼표예요.

그래서 충돌은 양쪽 방향으로 일어나요.

웹 서비스, 온라인 쇼핑몰, CRM에서 내보낸 파일도 마찬가지예요. 많은 서비스가 사용자가 어디에 있든 항상 쉼표로 저장하기 때문에 유럽 사용자들이 이 문제를 특히 자주 겪어요. 글자가 é 같은 기호로 바뀌는 비슷한 문제는 구분자가 아니라 인코딩 문제예요. CSV 글자 깨짐을 참고하세요.

해결 방법 1: 구분자를 자동으로 감지하는 도구로 열기

주문을 확인하거나, 고객을 찾거나, 내보낸 파일에 무엇이 들어 있는지 보는 것처럼 그냥 읽기만 하면 된다면, 구분자를 스스로 알아내는 뷰어가 가장 빨라요.

Opener CSV 뷰어는 파일을 살펴보고 쉼표, 세미콜론, 탭, 파이프 중 무엇으로 구분되어 있는지 감지한 다음 제대로 된 표로 보여 줘요. 텍스트 인코딩(UTF-8, Windows-1251, Windows-1252)도 감지하고, "Smith, John"처럼 구분자가 들어 있는 따옴표 값도 올바르게 처리해요. 설정할 것도 계정도 없고, 파일은 브라우저 안에 머물러요. 업로드되지 않아요. 결과를 검색하고 정렬하고 CSV나 JSON으로 내보낼 수 있어요.

해결 방법 2: Excel의 가져오기 또는 텍스트 나누기

Excel에서 데이터를 다뤄야 한다면, 더블클릭하지 말고 어떤 구분자를 쓸지 직접 알려 주세요.

텍스트/CSV에서 가져오기. 빈 통합 문서를 열고 데이터 탭에서 “텍스트/CSV에서”를 고르세요. Excel이 구분 기호 목록이 있는 미리보기를 보여 줘요. 열이 제대로 보일 때까지 쉼표나 세미콜론을 골라 본 다음 데이터를 불러오세요. 글자가 깨져 보인다면 같은 미리보기 창에서 파일 인코딩도 설정할 수 있어요.

텍스트 나누기. 데이터가 이미 A열에 들어가 있다면 이렇게 하세요.

  1. A열을 선택하세요.
  2. 데이터 탭에서 텍스트 나누기를 고르세요.
  3. 구분 기호로 분리됨을 선택하고, 파일이 쓰는 구분자(예: 세미콜론이나 쉼표)에 체크하세요.
  4. 마법사를 끝까지 진행하세요.

두 방법 모두 숫자 형식은 주의해야 해요. 소수점 쉼표 체계에서 1250.50이 들어 있는 파일을 열면 금액을 텍스트로 읽거나 엉뚱한 숫자로 읽을 수 있어요. 반대로 한국 Excel에서 1250,50 같은 유럽식 금액을 읽을 때도 마찬가지예요. 가져오기 미리보기와 텍스트 나누기 마법사의 마지막 단계에서 열을 어떻게 해석할지 정할 수 있으니, 합계를 믿기 전에 금액 몇 개를 확인하세요.

해결 방법 3: Excel용 “sep=” 줄 추가하기

Excel에서만 통하는 요령이 있어요. 파일 맨 위에 구분자를 알려 주는 줄을 한 줄 넣는 거예요.

sep=;
날짜;거래처;금액
2024-03-15;Müller GmbH;1250,50

메모장 같은 일반 텍스트 편집기로 파일을 열고, 첫 줄에 sep=;(쉼표 파일이라면 sep=,)를 넣고 저장한 다음 다시 더블클릭하세요. Excel이 이 힌트를 읽고 그 구분자를 쓰며, 이 줄 자체는 표시하지 않아요.

이건 표준이 아니라 우회 방법이에요. Google Sheets, LibreOffice, 데이터베이스, 스크립트 같은 다른 프로그램은 sep=를 모르기 때문에 보통 이 줄을 첫 번째 행으로 보여 주거나 머리글로 취급해요. Excel 사용자에게만 가는 파일에 쓰세요.

해결 방법 4: Google Sheets, LibreOffice 또는 국가별 설정

Google Sheets. 파일 → 가져오기에서 CSV를 업로드하세요. 가져오기 창에 구분자 유형 옵션이 있어서 자동 감지를 그대로 두거나 사용자 지정 문자를 포함해 구분자를 직접 고를 수 있어요.

LibreOffice Calc. CSV를 열면 LibreOffice가 쉼표, 세미콜론, 탭, 기타 구분자 체크박스와 실시간 미리보기가 있는 텍스트 가져오기 창을 보여 줘요. Windows, macOS, Linux에서 무료로 쓸 수 있어요.

Windows 목록 구분 기호 바꾸기. 기존 제어판의 국가 또는 지역 설정에서 추가 설정으로 들어가면 목록 구분 기호 칸이 있어요. 여기서 구분 기호를 바꾸면, 예를 들어 세미콜론으로 설정해 세미콜론 파일이 더블클릭만으로 바로 열리게 할 수 있어요. 하지만 조심해서 쓰세요. 시스템 전체에 적용되는 설정이라 Excel 수식에서 함수 인수를 구분하는 방식, 다른 프로그램이 CSV를 읽고 쓰는 방식까지 바뀌어요. 국내 동료와 파일을 주고받는다면, 동료들이 갑자기 다른 구분자로 된 파일을 받게 돼요. 대부분의 경우 위의 가져오기 방법이 더 안전해요.

자주 묻는 질문

같은 CSV가 왜 동료 컴퓨터에서는 멀쩡하게 열리나요?

동료 컴퓨터의 국가별 설정이 다른 목록 구분 기호를 쓰고 있어서예요. CSV를 더블클릭하면 Excel이 이 설정을 쓰기 때문에, 같은 파일이 어떤 컴퓨터에서는 제대로 열리고 다른 컴퓨터에서는 한 열에 몰려요.

CSV 파일은 쉼표와 세미콜론 중 무엇으로 저장해야 하나요?

누가 여는지에 달려 있어요. 다른 프로그램, 스크립트, 해외 동료에게는 쉼표가 일반적인 기본값이에요. 소수점 쉼표를 쓰는 나라의 Excel 사용자에게는 세미콜론이 바로 열려요. 가능하다면 받는 사람에게 물어보세요.

열 개수가 여전히 맞지 않는 행이 있는 건 왜 그런가요?

보통 값 안에 구분자 자체가 들어 있어서예요. 예를 들어 쉼표가 들어간 회사 이름을 따옴표로 감싸지 않은 경우죠. CSV 따옴표 규칙을 따르는 뷰어나 가져오기 도구는 따옴표로 감싼 값을 처리하지만, 감싸지 않은 값은 원본에서 고쳐야 해요.

CSV 뷰어로 탭이나 파이프로 구분된 파일도 열 수 있나요?

네. CSV 뷰어는 쉼표, 세미콜론, 탭, 파이프를 자동으로 감지하고 .csv, .tsv, .txt 파일을 열어요.