본문 바로가기

CSV 엑셀 변환

CSV 파일을 제대로 된 XLSX 통합 문서로 바꿉니다. 합계와 정렬이 되는 숫자와 날짜, 쓴 그대로 남는 우편번호와 긴 ID, 굵게 표시되고 고정되며 필터를 걸 수 있는 머리글 행까지 갖춥니다.

  • 저장되지 않음
  • 대기열 없음, 기다림 없음
  • 회원가입 없음, 워터마크 없음

사용 방법

1

CSV 파일 추가

.csv, .tsv, .txt 파일을 하나 이상 끌어다 놓거나 데이터를 붙여 넣으세요. 여러 파일은 통합 문서 하나의 시트들이 됩니다.

2

미리보기 확인

구분 기호와 인코딩은 자동으로 감지되며, 열마다 적용될 데이터 타입이 표시됩니다. 원하는 대로 바꾸세요.

3

다운로드

Excel, Google Sheets, Numbers, LibreOffice에서 열리는 .xlsx 통합 문서를 받습니다.

열의 데이터 타입이 정해지는 방식

열은 전체를 살펴본 뒤 하나의 타입으로 정해지며, 몇 가지 특정한 형태가 있으면 나머지 값이 어떻든 열을 텍스트로 되돌립니다. 두 자리 이상에서 앞자리 0이 붙은 값이 하나라도 있으면 그렇습니다. 유효 숫자가 15자리를 넘는 숫자도 마찬가지인데, 그 이상은 표시 방식이 달라지는 것이 아니라 숫자가 사라지는 지점이기 때문입니다. 더하기 기호 뒤에 7자리 이상 숫자가 오는 값도 그렇습니다. 수량이 아니라 전화번호이기 때문입니다. 한 열에 통화 기호 두 종류가 섞이거나, 소수점 기호가 섞이거나, Excel 자체 달력이 담을 수 없는 1900년 이전 날짜가 있어도 그렇습니다. 이런 결정은 모두 미리보기에 이유와 함께 표시되므로, 열이 왜 텍스트로 남았는지 궁금해할 필요 없이 바로 알 수 있습니다.

날짜는 셀 단위가 아니라 열 단위로 판단합니다. 12보다 큰 값이 있으면 파일이 일을 먼저 쓰는지 월을 먼저 쓰는지가 정해집니다. 그런 값이 없으면 다른 열들이 판단을 거들고, 그다음은 여러분의 설정, 마지막으로 일 먼저가 기본입니다. 두 순서가 섞인 열은 추측하지 않고 텍스트로 유지합니다. 잘못 추측하면 눈에 띄지도 않을 경우이기 때문입니다. 두 자리 연도는 Excel 자체 규칙을 따라 30 미만이면 이번 세기로 봅니다. 진짜 불리언이 되는 것은 true와 false라는 글자 그대로의 단어뿐입니다. yes와 no, Y와 N, 1과 0은 어딘가의 어떤 파일에서는 다른 뜻이므로 그대로 둡니다.

열의 타입에 맞지 않는 값은 비우지 않고 원래 텍스트로 다시 기록하며, 보통 “값 없음”을 뜻하는 표시인 NA, N/A, null, nil, none, 대시나 물음표 하나, Excel 자체의 오류 텍스트는 타입이 정해진 열에 나타나도 그 열을 깨뜨리지 않습니다. 모든 텍스트 셀은 앞에 작은따옴표를 붙이는 방식이 아니라 셀 타입으로 텍스트로 기록되므로, 등호로 시작하는 필드도 위장된 것이 아니라 통합 문서 안에서 실제로 무해합니다. 이 중 파일에 맞지 않는 것이 있다면, 다운로드 전에 미리보기에서 열마다 텍스트로 고정할 수 있습니다.

다른 작업이 필요할 때

이 변환은 페이지 안에서 실행됩니다. 탭이 계속 반응하도록 자주 쉬어 가며, 파일 용량 상한이 없습니다. 이 두 가지가 합쳐지면, 정말 큰 CSV는 오류가 나기 전에 컴퓨터 팬 소리부터 들리게 됩니다. 수백 메가바이트짜리 파일이나 매일 밤 반복하는 변환이라면 csvkit의 in2csv와 헤드리스 모드의 LibreOffice 가 스크립트로 같은 일을 하며, 둘 다 브라우저가 표 전체를 붙들고 있을 필요가 없습니다.

더 어려운 질문은 .xlsx가 맞는 목적지인가입니다. 통합 문서는 사람이 데이터를 읽고 편집하는 곳이며, 파일을 코드만 읽을 거라면 타입을 제대로 맞추느라 쓴 시간은 모두 낭비입니다. 그럴 때는 CSV를 그대로 두거나 Parquet이나 JSON Lines로 한 번 변환하고, 받는 쪽이 값에서 스키마를 추론하는 대신 직접 선언하게 하세요. 타입 추론은 신중하게 한 좋은 추측이지만, 스키마는 추측이 아닙니다.

자주 묻는 질문

그냥 Excel에서 CSV를 열면 안 되나요?

Excel은 셀마다 따로 추측합니다. 우편번호는 앞자리 0을 잃고, 16자리 ID는 1.23457E+15가 되고, SEPT2 같은 유전자 이름은 날짜가 되며, 세미콜론 파일은 열 하나에 몰려 들어갑니다. 이 변환기는 열마다 모든 값을 보고 한 번만 결정하며, 열 전체가 일치할 때만 변환합니다.

날짜는 어떻게 인식하나요?

열 단위로 인식합니다. 15/03/2024와 03/15/2024는 같은 열의 다른 날짜들로 구별하며, ISO 날짜, 시간, 월 이름도 인식합니다. 날짜는 진짜 Excel 날짜가 되고, 원래 쓴 순서대로 표시됩니다. 열이 정말로 모호하다면 “일 먼저”나 “월 먼저”를 직접 고르세요.

제 파일은 세미콜론과 소수점 쉼표를 써요.

자동으로 감지합니다. 9,8은 숫자 9.8이 되고 1.234,56은 1234.56이 됩니다. 구분 기호와 소수점 기호를 직접 설정할 수도 있습니다.

어떤 문자 인코딩을 지원하나요?

UTF-8과 UTF-16은 자동 감지되며, 예전 Windows 프로그램으로 저장한 서유럽·중부 유럽어, 키릴 문자, 그리스어, 터키어, 히브리어, 아랍어, 일본어, 중국어, 한국어 파일도 인식하거나 직접 고를 수 있어 ą, ß, Ж, 日本이 제대로 나옵니다.

제 데이터가 어딘가에 저장되나요?

아니요. 파일을 읽고 통합 문서를 쓰는 작업은 여기서 이뤄지며, 어디에도 전송되지 않고 아무것도 저장하지 않습니다.

통합 문서를 열 때 CSV가 수식을 실행할 수 있나요?

아니요. =로 시작하는 셀은 수식이 아니라 텍스트로 저장되므로, 악의적인 CSV가 Excel에서 무언가를 실행할 수 없습니다. 타입 감지를 끄면 모든 셀이 텍스트 그대로 유지됩니다.

참고: Excel 시트 하나에는 최대 1,048,576행이 들어갑니다. 더 긴 파일은 머리글을 반복한 추가 시트로 이어집니다. 아주 큰 파일(수백 MB)은 기기 메모리에 따라 제한됩니다.

내 웹사이트에 이 도구 넣기

블로그, 수업 페이지, 도움말 글 어디에나 무료로 넣을 수 있습니다. 코드 한 줄만 붙여 넣으면 방문자가 페이지에서 바로 사용할 수 있습니다.