Menu

엑셀 텍스트 나누기: 이름과 성 분리, TEXTSPLIT 함수

=TEXTBEFORE(A2," ")는 Ana Silva에서 이름을, =TEXTAFTER(A2," ")는 성을 반환합니다. TEXTSPLIT은 셀 하나를 한 번에 여러 열로 나누고, 이전 엑셀에서는 LEFT, MID, FIND로 같은 일을 합니다.

이 페이지의 모든 시트는 실제로 동작합니다. 숫자나 수식을 바꾸면 다시 계산됩니다.

=TEXTBEFORE(A2," ")는 첫 번째 공백 앞의 모든 것을 반환하므로 Ana Silva에서 Ana가 나오고, =TEXTAFTER(A2," ")는 그 뒤의 모든 것인 Silva를 반환합니다. 두 수식을 아래로 채우면 모든 전체 이름이 두 열로 나뉩니다.

이름과 성 나누기
B2
ABC
1Full nameFirstLast
2Ana SilvaAnaSilva
3Ben OkaforBenOkafor
4Chen WuChenWu
5Dara KellyDaraKelly
6Eli NovakEliNovak
셀을 클릭하면 수식이 보입니다. 숫자나 수식을 바꾸면 시트가 다시 계산됩니다.

A열의 이름을 바꾸면 두 열이 따라 바뀝니다. TEXTBEFORE, TEXTAFTER, TEXTSPLIT은 Microsoft 365나 Excel 2024가 필요합니다. Excel 2021 이하용인 LEFT와 FIND 방법은 아래에 있습니다.

TEXTSPLIT: 셀을 여러 열로 나누기

=TEXTSPLIT(A2," ")는 공백마다 텍스트를 자르고 각 조각을 별도의 셀로 분산합니다. 수식 하나가 조각 수만큼 열을 채웁니다:

구분 기호마다 나누기
B2
ABCDE
1Text
2Ana Maria SilvaAnaMariaSilva
3Paris, Lyon, NiceParisLyonNice
셀을 클릭하면 수식이 보입니다. 숫자나 수식을 바꾸면 시트가 다시 계산됩니다.
  • 구분 기호는 두 글자 이상이어도 됩니다. ", "는 쉼표 뒤에 공백이 오는 곳에서 나누므로 조각 앞에 공백이 남지 않습니다.
  • 결과가 들어갈 자리를 비워 두세요. 오른쪽 셀이 비어 있지 않으면 수식은 대신 #SPILL!을 표시합니다.
  • 조각은 숫자라도 항상 텍스트이므로 SUM이 건너뜁니다. 숫자가 필요하면 앞에 빼기 기호 두 개를 붙이세요: =--TEXTSPLIT(A2,",").

세 번째 인수는 행 구분 기호입니다. 둘 다 쓰면 TEXTSPLIT이 셀 하나로 작은 표를 만듭니다. 쉼표는 열을, 세미콜론은 행을 나눕니다.

셀 하나에서 열과 행 만들기
A4
AB
1Teams
2Ana,Red;Ben,Blue;Chen,Green
3
4AnaRed
5BenBlue
6ChenGreen
셀을 클릭하면 수식이 보입니다. 숫자나 수식을 바꾸면 시트가 다시 계산됩니다.

엑셀에서 쓸 수 있는 두 가지 형태를 텍스트로 보여 드립니다:

=TEXTSPLIT(A2,,", ")        one piece per row: the column delimiter is left out
=TEXTSPLIT(A2,{";",","})    several delimiters in braces: splits at ; or ,

첫 번째는 excel, formulas, text를 세 셀짜리 열로 바꿉니다. 셀 하나에 입력한 목록을 행으로 바꾸는 방법입니다. 두 번째는 red;green,blue를 red, green, blue로 바꿉니다.

중간 이름과 "성, 이름" 형식

TEXTAFTER(A2," ")는 첫 번째 공백 뒤의 모든 것을 반환하므로 Ana Maria Silva에서는 Maria Silva가 나옵니다. 마지막 단어를 얻으려면 인스턴스 번호 -1로 끝에서부터 세세요. Silva, Ana처럼 쓴 이름은 쉼표와 공백에서 나눕니다:

중간 이름이 있는 이름
C2
ABC
1Full nameFirstLast
2Ana Maria SilvaAnaSilva
3Ben OkaforBenOkafor
4Chen Li WuChenWu
5CherCher
6
7Last, FirstFirstLast
8Silva, AnaAnaSilva
셀을 클릭하면 수식이 보입니다. 숫자나 수식을 바꾸면 시트가 다시 계산됩니다.

구분 기호가 없으면 TEXTBEFORE와 TEXTAFTER는 #N/A를 반환하는데, Cher 같은 한 단어 이름에는 공백이 없습니다. 5행은 대신 반환할 값인 여섯 번째 인수를 씁니다. =TEXTBEFORE(A5," ",,,,A5)는 이름 전체를, TEXTAFTER(...,"")는 빈 셀을 반환합니다.

이메일 주소 나누기
C2
ABC
1EmailUserDomain
2ana.silva@coddy.techana.silva
셀을 클릭하면 수식이 보입니다. 숫자나 수식을 바꾸면 시트가 다시 계산됩니다.

직접 해 보세요: C2에서 A2에 있는 이메일 주소의 도메인, 즉 @ 뒤의 모든 것을 반환하세요.

이전 엑셀에서 이름 나누기

TEXTBEFORE와 TEXTAFTER가 없으면 FIND로 공백의 위치를 찾고 LEFT, MID, RIGHT로 그 주변을 자릅니다:

LEFT와 FIND로 이름과 성 나누기
B2
ABC
1Full nameFirstLast
2Ana SilvaAnaSilva
3Ben OkaforBenOkafor
4Chen WuChenWu
셀을 클릭하면 수식이 보입니다. 숫자나 수식을 바꾸면 시트가 다시 계산됩니다.
  • FIND(" ",A2)는 공백의 위치로, Ana Silva에서는 4입니다.
  • LEFT(A2,4-1)은 그 앞의 3글자를 가져옵니다.
  • MID(A2,4+1,100)은 공백 다음부터 최대 100글자를 가져옵니다. 100은 "어떤 이름보다 긴 길이"라는 뜻일 뿐이며, =RIGHT(A2,LEN(A2)-FIND(" ",A2))는 정확한 길이로 같은 결과를 냅니다.

이 수식들은 공백이 없으면 #VALUE!를 반환합니다. 대신 셀 전체를 반환하려면 IFERROR로 감싸세요: =IFERROR(LEFT(A2,FIND(" ",A2)-1),A2).

대시 앞의 제품 코드
B2
AB
1CodePrefix
2KT-1043-BLUE
셀을 클릭하면 수식이 보입니다. 숫자나 수식을 바꾸면 시트가 다시 계산됩니다.

직접 해 보세요: B2에서 LEFT와 FIND로 제품 코드의 첫 번째 대시 앞부분을 반환하세요.

텍스트 나누기와 빠른 채우기

수식 없이 열을 한 번만 나누려면:

  1. 전체 이름이 있는 열을 선택합니다. 텍스트 나누기는 오른쪽 열을 덮어쓰므로 오른쪽 열이 비어 있는지 확인하세요.
  2. 데이터 > 텍스트 나누기.
  3. 구분 기호로 분리됨을 고르고 다음을 클릭한 뒤 공백(또는 쉼표, 또는 기타에 다른 문자 입력)에 체크하고 다음을 클릭합니다.
  4. 첫 번째 조각이 전체 이름을 대신합니다. 전체 이름을 남기려면 대상을 오른쪽의 빈 셀로 지정한 뒤 마침을 클릭하세요.

패턴이 있으면 빠른 채우기가 더 빠릅니다. Ana Silva 옆에 Ana를 입력하고 Enter를 누른 뒤 Ctrl+E를 누르거나 데이터 > 빠른 채우기를 쓰면 엑셀이 나머지 행의 이름을 채웁니다. 두 도구 모두 고정된 값을 씁니다. 나중에 이름이 바뀌어도 나눈 결과는 바뀌지 않지만, 수식은 바뀝니다.

자주 묻는 질문

엑셀에서 이름과 성을 나누려면 어떻게 하나요?

A2에 Ana Silva 같은 이름이 있으면 =TEXTBEFORE(A2," ")는 Ana를, =TEXTAFTER(A2," ",-1)은 중간 이름이 있어도 Silva를 반환합니다. Excel 2021 이하에서는 이름에 =LEFT(A2,FIND(" ",A2)-1)을 쓰세요.

TEXTSPLIT은 어느 엑셀 버전에 있나요?

TEXTSPLIT, TEXTBEFORE, TEXTAFTER는 Microsoft 365, 웹용 Excel, Excel 2024에 있습니다. Excel 2021 이하에서는 #NAME?이 표시되므로 LEFT, MID, RIGHT, FIND나 데이터 > 텍스트 나누기를 쓰세요.

엑셀에서 셀을 쉼표로 나누려면 어떻게 하나요?

=TEXTSPLIT(A2,", ")는 각 조각을 별도의 열로 분산합니다. 조각을 행으로 넣으려면 열 구분 기호를 비워 두세요: =TEXTSPLIT(A2,,", ").

TEXTBEFORE가 #N/A를 반환하는 이유는 무엇인가요?

셀에 구분 기호가 없기 때문입니다. 예를 들어 공백이 없는 한 단어 이름이 그렇습니다. 여섯 번째 인수에 그 경우의 값을 주세요: =TEXTBEFORE(A2," ",,,,A2)는 공백이 없을 때 셀 전체를 반환합니다.

Coddy 프로그래밍 언어 일러스트

Coddy로 코딩 배우기

시작하기