Google Sheets에서 한 셀의 값을 구분자 기준으로 나누려면, 한 번만 정리할 때는 데이터 → 텍스트를 열로 분할, 원본 값이 바뀔 때마다 다시 계산해야 하면 SPLIT 함수를 사용하세요. 먼저 시트 탭을 복사하고, 결과가 펼쳐질 오른쪽 열에 기존 데이터가 없는지 확인합니다. 쉼표·탭·공백처럼 구분자가 일정한 자료에는 두 방법 모두 쓸 수 있지만, 구분자가 실제 값 안에도 나타나는 CSV라면 단순 분할부터 하지 말고 파일 가져오기나 CSV 형식을 처리하는 도구를 선택해야 합니다.
원본 열에서 바로 시험하지 마세요. 텍스트 나누기는 여러 열에 결과를 만들고, SPLIT 수식은 수식이 놓인 셀의 오른쪽으로 결과를 펼칩니다. 원본 탭을 복사한 뒤 빈 영역에서 작은 표본으로 시험하고, ID·전화번호·날짜처럼 문자 하나가 달라져도 문제가 되는 값은 원본과 결과를 대조한 후에만 기존 열을 교체하세요.
한 번 정리할지, 계속 갱신할지 먼저 정합니다
같은 “텍스트 나누기”라도 작업의 목적에 따라 편한 방법이 다릅니다. 입력을 한 번 정리해 결과를 고정할지, 새 행이 추가될 때 결과도 계속 계산되어야 할지부터 정하세요.
| 상황 | 권장 방법 | 선택 이유 |
|---|---|---|
| 다운로드한 이름·부서·코드를 한 번 분리 | 데이터 → 텍스트를 열로 분할 | 선택한 셀을 정리하고 분리 결과를 값으로 남기기 쉽습니다. |
| 원본 문자열이 바뀔 때 결과도 따라와야 함 | SPLIT 함수 | 원본 열은 그대로 두고 별도 결과 열을 수식으로 계산합니다. |
| 외부 CSV 파일을 반복해 가져오거나 데이터가 큼 | 파일 → 가져오기 | 구분자와 가져오기 위치를 정할 수 있어 전체 파일 처리에 적합합니다. |
| 따옴표로 감싼 값 안에도 쉼표가 들어 있음 | CSV 가져오기 또는 CSV 파서 | 단순 쉼표 분할은 값 안의 쉼표와 필드 경계를 구분하지 못합니다. |
구분자 패턴이 일정하지 않거나 값 안에 같은 문자가 자주 들어 있다면, 분할보다 원본 데이터 형식을 확인하는 일이 먼저입니다. “나눌 수 있다”와 “의미를 보존한 채 나눌 수 있다”는 다릅니다.
원본 사본과 비어 있는 출력 열을 준비합니다
- 시트 아래쪽 탭 메뉴에서 원본 탭을 복사하거나, 파일 사본에서 작업합니다. 공유 문서라면 다른 사람이 동시에 편집하고 있는지 먼저 확인합니다.
- 한 행만 선택해 예시를 시험합니다. 예를 들어
김하나 | 운영팀 | 010-0123-0456가 들어 있는 셀을 선택하고, 기대하는 결과가 이름·부서·연락처의 세 열인지 적어 둡니다. - 결과가 펼쳐질 열의 기존 값·수식·머리글을 확인합니다. 결과 영역이 겹치면 원본 사본의 새 탭이나 충분히 비어 있는 열에서 작업합니다.
- 구분자가 모든 행에서 같은 순서와 표기인지 표본 몇 개를 확인합니다. 한 행은 쉼표, 다른 행은 슬래시를 쓴다면 자동 감지 결과를 전체 자료에 그대로 적용하지 않습니다.
- 연락처·상품 코드·우편번호처럼 선행 0이 의미 있는 값은 원본에서 셀을 클릭해 수식 입력줄의 실제 값을 확인합니다. 출력 결과를 검수하기 전에는 원본 열을 지우거나 덮어쓰지 않습니다.
권한: 보호된 범위에서 편집 권한이 없으면 분할이나 수식 입력이 제한될 수 있습니다. 권한 오류가 나면 보호를 임의로 풀지 말고 문서 소유자에게 사본 작업이나 범위 편집 권한을 요청하세요.
메뉴에서 텍스트를 열로 나누는 순서
- 분할할 셀 또는 한 열의 데이터 범위를 선택합니다. 머리글이 있으면 머리글을 제외한 데이터 셀만 선택하는 편이 안전합니다.
- 상단 메뉴에서 데이터 → 텍스트를 열로 분할을 선택합니다. 데이터를 붙여넣는 중이라면 붙여넣기 옵션에서 텍스트를 열로 분할을 선택하는 방식도 있습니다.
- 선택한 데이터 근처에 나타나는 구분선 메뉴를 열어 쉼표, 공백, 세미콜론, 탭 등 실제 자료와 일치하는 구분자를 선택합니다. 메뉴 항목은 화면 언어와 버전에 따라 다를 수 있습니다.
- 구분자가 한 가지로 정해져 있지 않을 때만 자동 감지를 시험합니다. 결과가 기대한 열 수로 나뉘는지 첫 행, 중간 행, 마지막 행을 확인합니다.
- 행마다 결과 열 수가 다른지, 다음 데이터 열과 겹치는지 확인합니다. 문제가 있으면 원본 사본에서 구분자를 바꾸거나 선택 범위를 좁혀 다시 시험합니다.
- 정상인 표본을 확인한 후 나머지 행에 적용하고, 원본과 분리 결과가 맞는지 검산합니다.
Google 공식 도움말도 먼저 분할할 셀을 선택하고, 데이터 메뉴의 텍스트를 열로 분할에서 구분자를 바꾸거나 자동 감지를 선택하는 흐름을 안내합니다. 자동 감지는 편의를 위한 선택지입니다. 데이터가 불규칙할 때 잘못된 경계를 추측해 줄 수 있으므로 결과 검사를 생략하지 마세요.
구분자는 화면에서 보이는 문자 그대로 선택합니다
분리할 문자열 사이에 들어 있는 문자를 기준으로 고릅니다. 예를 들어 상품A,상품B,상품C는 쉼표, 서울 / 부산 / 대전은 슬래시 또는 슬래시 양쪽 공백, 탭으로 내보낸 자료는 탭이 구분자입니다.
| 원본 예시 | 먼저 시험할 구분자 | 확인할 점 |
|---|---|---|
빨강,파랑,초록 | 쉼표 , | 각 행에서 쉼표 수와 생성 열 수가 맞는지 확인 |
김하나 | 운영팀 | | 또는 실제 공백까지 포함한 구분자 | 분리된 값 앞뒤에 공백이 남는지 확인 |
서울 강남 매장01 | 탭 | 웹페이지에서 복사한 공백이 탭인지 일반 공백인지 확인 |
2026-10-05 | 하이픈은 날짜 안에도 쓰임 | 날짜 전체를 보존할지 연·월·일로 나눌지 먼저 결정 |
자동 감지는 공백이나 쉼표처럼 흔한 구분자를 편하게 찾는 데 유용하지만, 문자 자체가 값 안에도 쓰이면 의도한 열 경계와 다르게 해석될 수 있습니다. 구분자를 사람이 정할 수 있다면 데이터 구조와 일치하는 문자를 선택하세요.
SPLIT 함수는 원본을 두고 결과를 계산합니다
원본 문자열이 A2에 있고 쉼표를 기준으로 나누려면, 비어 있는 결과 영역에 다음 수식을 입력합니다.
=SPLIT(A2,",")
수식은 분할 결과를 같은 행의 여러 셀에 표시합니다. 원본이 A열에 있다면 결과를 B열보다 더 오른쪽의 빈 영역에 두고, 아래 행에도 적용할 수 있도록 수식을 복사합니다. 원본과 결과를 한 열에 덮어쓰면 수식이 참조하는 값이 바뀌거나 보존할 원본을 잃을 수 있습니다.
이름·부서처럼 여러 값이 | 라는 세 글자 구분자로 정확히 나뉘고, 각 기호 사이에 비어 있는 항목도 보존해야 한다면 네 번째 선택 인수를 지정합니다.
=SPLIT(A2," | ",FALSE,FALSE)
함수 구문은 SPLIT(텍스트, 구분자, [split_by_each], [remove_empty_text])입니다. 기본값에서는 구분자에 여러 문자를 넣어도 각 문자를 따로 구분자로 취급합니다. 따라서 "ab"를 하나의 연속된 경계로 찾고 싶다면 세 번째 인수 FALSE를 줍니다. 마지막 인수의 기본값은 TRUE라 연속 구분자 사이의 빈 문자열이 제거됩니다. 빈 칸을 열 위치로 보존해야 하면 마지막 인수도 FALSE로 지정하세요.
구분자가 여러 글자이거나 빈 열이 있어도 위치를 지킵니다
구분자 문자가 반복되거나 값이 빠진 행에서 일반적인 기본 수식만 쓰면 열 위치가 달라질 수 있습니다. 예를 들어 홍길동,,서울에서 가운데 빈 값이 “부서 없음”을 뜻한다면 그 자리를 유지해야 합니다.
| 원본 문자열 | 설정 | 기대하는 결과 |
|---|---|---|
홍길동,운영,서울 | =SPLIT(A2,",") | 홍길동 / 운영 / 서울 |
홍길동,,서울 | =SPLIT(A2,",",TRUE,FALSE) | 홍길동 / 빈 셀 / 서울 |
김하나 | 운영팀 | =SPLIT(A2," | ",FALSE,FALSE) | 김하나 / 운영팀 |
홍길동;;;서울 | 세미콜론을 한 번에 처리할지, 연속 세미콜론을 빈 필드로 볼지 결정 | 업무 규칙에 따라 열 위치를 정한 뒤 수식 선택 |
remove_empty_text=FALSE는 연속 구분자 사이의 빈 항목을 남깁니다. 다만 원본의 빈칸이 “정보 없음”인지 “실수로 빠진 값”인지는 함수가 판별하지 못합니다. 분할을 마친 뒤 필수 항목이 비어 있는 행을 별도로 필터링해 확인하세요.
분할 뒤 공백은 확인하고 필요할 때만 정리합니다
구분자가 이름, 부서처럼 쉼표 다음에 공백을 포함하면 두 번째 결과에 앞 공백이 남을 수 있습니다. 일반적인 앞뒤·반복 공백은 Google Sheets의 데이터 정리 메뉴에 있는 공백 제거 또는 TRIM으로 정리할 수 있습니다.
=TRIM(B2)
TRIM은 앞뒤 공백과 반복 공백을 다듬지만 줄바꿈 없는 공백(non-breaking space)은 제거하지 않습니다. 웹페이지나 다른 시스템에서 복사한 값에 그 문자가 들어 있으면, 먼저 일반 공백으로 바꾸고 TRIM을 적용하는 보조 수식을 사용할 수 있습니다.
=TRIM(SUBSTITUTE(B2,CHAR(160)," "))
여기서 CHAR(160)은 숫자로 지정한 유니코드 문자를 반환합니다. 10진수 160은 유니코드 U+00A0 NO-BREAK SPACE에 해당합니다. SUBSTITUTE는 그 문자를 일반 공백으로 바꿉니다. 보조 열 결과를 눈으로 확인한 뒤 필요한 값만 붙여넣기하여 원본과 교체하세요. 값 안의 의미 있는 공백까지 없애지 않도록 이름·주소 표본을 먼저 확인합니다.
주소·코드·CSV처럼 값 안에 구분자가 있을 때
쉼표는 구분자이면서 주소나 금액 표기 안에 포함될 수 있습니다. 단순히 쉼표마다 나누면 아래 주소는 세 칸으로 분리돼 버립니다.
서울시 강남구, 테헤란로 1길 10, 3층
또한 표준 CSV에서는 큰따옴표로 감싼 필드 내부의 쉼표가 데이터일 수 있습니다. 예를 들어 "강남구, 테헤란로",서울를 무조건 쉼표로 분리하면 첫 필드가 잘못 갈라집니다. 이런 데이터는 텍스트 나누기나 SPLIT 대신 파일 → 가져오기에서 CSV 구분자를 지정하거나, 따옴표 규칙을 이해하는 CSV 파서를 사용하세요.
상품 ID·전화번호·우편번호의 선행 0, 날짜, 계좌 참조번호처럼 문자 그대로 보존할 값은 분할 결과를 원본과 비교하세요. 분할 도구가 특정 형식 보존을 보장한다고 가정하지 말고, 표본 시트에서 셀을 눌러 실제 값과 표시 형식을 모두 확인합니다. Excel·CSV에서 Google Sheets로 가져올 때 선행 0과 날짜가 바뀌는 문제는 CSV·Excel을 Google Sheets로 가져올 때 값과 날짜를 보존하는 가이드에서 별도로 다룹니다.
분리된 열 수와 원본을 단계별로 검산합니다
첫 행만 그럴듯하게 보인다고 전체 데이터가 올바르게 나뉜 것은 아닙니다. 적용 범위를 넓히기 전에 다음 기준으로 확인합니다.
- 열 개수: 각 행에서 필수 필드가 같은 열에 들어갔는지 확인합니다. 일부 행만 한 열 더 만들어졌다면 값 안의 구분자를 찾아야 합니다.
- 빈 필드: 주소2·부서·선택 옵션이 비어 있는 경우에도 다음 필드 위치가 유지되는지 봅니다.
- 문자열 보존: 선행 0이 있는 코드와 전화번호, 하이픈이 든 날짜·ID의 실제 값이 원본과 같은지 확인합니다.
- 공백: 이름·제품명·주소 앞뒤에 불필요한 공백이 있는지, 띄어쓰기가 의미 있는 문자열을 TRIM으로 훼손하지 않았는지 확인합니다.
- 행 수: 분할 전후 원본 행 수가 같은지 확인합니다. 분할 작업은 행을 늘리기 위한 작업이 아니라 한 행의 값을 여러 열로 나누는 작업입니다.
- 표본 선택: 첫 행, 중간 행, 마지막 행뿐 아니라 구분자가 빠졌거나 반복된 행, 한 필드가 빈 행도 확인합니다.
- 원본 교체: 확인이 끝난 뒤에만 결과를 값으로 붙여넣거나 사용 열을 바꿉니다. 원본 열을 삭제한다면 사본과 팀 검수를 먼저 남깁니다.
원하는 결과가 나오지 않을 때
| 증상 | 가능한 원인 | 먼저 할 조치 |
|---|---|---|
| 한 셀로 그대로 남음 | 선택 범위나 구분자가 실제 값과 다름 | 한 셀에서 눈에 보이지 않는 탭·공백을 확인하고 구분자를 다시 선택 |
| 예상보다 열이 많이 생김 | 구분자가 주소·제품명 안에도 포함 | 해당 행을 찾고 단순 분할을 중지해 CSV 가져오기 또는 구조화된 파싱 검토 |
| 빈 항목 뒤 값이 왼쪽으로 당겨짐 | SPLIT의 기본 빈 텍스트 제거 옵션 | 마지막 인수를 FALSE로 설정해 빈 위치 보존 여부를 작은 표본에서 비교 |
| 수식 결과가 보이지 않거나 오류 | 출력할 셀에 기존 값이 있거나 배열이 들어갈 공간 부족 | 수식을 비어 있는 다른 열에 옮기고 출력 예상 폭을 확보 |
| 일부 행의 결과만 다름 | 행마다 구분자 표기가 다르거나 값이 빠짐 | 정상 행과 문제 행 원문을 나란히 두고 규칙을 분리 |
| 코드의 앞자리 0이 사라짐 | 값 또는 표시 형식이 원본과 달라짐 | 원본 사본에서 실제 셀 값을 확인하고 CSV 보존 가이드에 따라 가져오기 단계부터 점검 |
오류 해결을 위해 원본 전체에 Find and replace, 자동 형식 변환, 열 삭제를 한꺼번에 적용하지 마세요. 사본에서 원인 하나씩 시험하고 원본 행과 결과 행을 대조해야 어떤 규칙이 해결책이었는지 추적할 수 있습니다.
자주 묻는 질문
한 셀에서 여러 열로 나누는 메뉴는 어디에 있나요?
Google Sheets 데스크톱에서 셀을 선택한 뒤 데이터 → 텍스트를 열로 분할을 선택합니다. 구분선 메뉴에서 실제 구분자 또는 자동 감지를 고를 수 있습니다.
SPLIT을 아래 행 전체에 자동으로 적용할 수 있나요?
한 행의 수식을 아래로 복사해 각 원본 셀을 참조하게 할 수 있습니다. 원본 행이 계속 늘어나는 작업이면 새 행에 수식이 적용되는 구조와 출력 공간을 먼저 작은 사본에서 확인하세요. 자동 배열 수식을 무리하게 추가하기보다 데이터 양과 시트 구조를 확인하는 편이 안전합니다.
구분자 없이 특정 위치에서 나눌 수 있나요?
텍스트 나누기와 SPLIT은 지정한 구분자로 나눕니다. 고정 길이 코드처럼 문자 위치가 기준이라면 LEFT·MID·RIGHT 등 위치 기반 텍스트 함수를 쓰거나 원본 규칙을 따로 분석하세요.
문자열의 쉼표까지 모두 나뉘는데 막을 수 있나요?
값 안의 쉼표와 필드 사이 쉼표를 구분하는 규칙이 없다면 단순 분할로 해결할 수 없습니다. 따옴표를 포함한 CSV라면 파일 가져오기 또는 따옴표 규칙을 처리하는 CSV 파서를 사용하고, 일부 열이 합쳐진 임의 텍스트라면 고유 구분자와 데이터 사전을 먼저 정하세요.
분할 뒤 기존 셀을 지워도 되나요?
원본과 결과를 대조하고 백업을 만든 뒤에만 결정하세요. 원본 수식을 참조하는 다른 시트나 조회식이 없는지도 확인합니다. 검산이 끝나면 필요한 경우 결과를 복사한 뒤 값만 붙여넣어 수식 의존성을 제거할 수 있습니다.
Google 공식 자료
- Google Sheets 고객센터: 텍스트 분할, 중복 데이터 삭제, 공백 제거 — 데스크톱에서 텍스트를 열로 나누고 구분자와 자동 감지를 선택하는 절차
- Google Sheets 함수 도움말: SPLIT — 구문, 여러 글자 구분자 옵션, 빈 텍스트 처리
- Google Sheets 함수 도움말: TRIM — 앞뒤·반복 공백 처리와 공백 관련 주의
- Google Sheets 함수 도움말: SUBSTITUTE — 문자열 안의 특정 텍스트를 바꾸는 방법
- Google Sheets 함수 도움말: CHAR — 숫자 코드에서 유니코드 문자 반환
- Google Sheets 고객센터: 데이터 수집 최적화 — 파일 가져오기, CSV 구분자와 대용량 데이터 처리 선택
- Google Sheets 함수 목록 — 텍스트 함수 찾아보기
- Unicode Consortium: Unicode 17.0 Latin-1 Supplement 차트 —
U+00A0NO-BREAK SPACE 코드 확인