본문 바로가기
칼퇴를 위한 엑셀

[엑셀] 텍스트 나누기 2-1편: 함수 활용(텍스트함수, LEN함수, FIND함수)

by 주노파크 2020. 4. 15.

지난 번 포스팅에서는 엑셀의 데이터 기능 중 하나인 '텍스트 나누기' 사용법을 알아보았습니다.

못 보신 분은 아래 링크 클릭클릭!

https://wienwien.tistory.com/20

 

[엑셀] 텍스트 나누기 1편: 엑셀 기본기능 활용

지난 번 포스팅에서는 텍스트 합치기 하는 법을 알아보았습니다. [엑셀] 텍스트 합치기 (CONCAT, '&' 연산자, TEXTJOIN) → https://wienwien.tistory.com/18 이번에는 엑셀에서 텍스트를 나누는 법에 대해 알..

wienwien.tistory.com

 

정말 간편하고 편리한 방법이지만, 함수 기능은 아니기 때문에 텍스트를 나눌 때마다 '텍스트 나누기 마법사'를 이용해야 합니다.

이를 함수로 구현해서, 복사+붙여넣기 혹은 자동완성을 할 수 있다면 정말 편리하겠죠?

한번 해봅시다!

 

 

 

이번에는 텍스트 나누기를 구현하기 위해 알아야 하는 함수들 몇 가지를 소개해 드리는 시간을 갖도록 할게요.

 

1) 텍스트함수 (LEFT, RIGHT, MID)

 

많이들 알고 계시는 함수일 거에요.

실제로 업무 보실 때에도 활용도가 굉장히 높은 함수들입니다.

LEFT, RIGHT, MID 함수 각각에 대해 간단하게 먼저 소개해 드릴게요.

 

1-1. LEFT 함수  =LEFT(text, num_chars)

: 텍스트 문자열의 시작 지점부터 지정한 수 만큼의 문자를 반환

쉽게 말해서 텍스트의 맨 왼쪽에서부터 몇 글자를 가져오는 함수입니다.

 

1-2. RIGHT 함수  =RIGHT(text, num_chars)

: 텍스트 문자열의 끝 지점부터 지정한 수만큼의 문자를 반환

LEFT 함수와는 반대로 맨 오른쪽부터 몇 글자를 가져오는 함수입니다.

 

1-3. MID 함수  =MID(text, start_num, num_chars)

: 문자열의 지정 위치에서 문자를 지정한 개수만큼 돌려줌

MID 함수는 LEFT, RIGHT과는 다르게 시작 위치를 지정해서, 그로부터 몇 글자를 가져오는 함수가 되겠습니다.

 

그럼 위에서 설명한 3가지 텍스트 함수 중 MID 함수의 사용례를 하나 보도록 할게요.

 

우리 주민등록번호는 뒤 7자리 중 첫 번째 자리가 성별을 의미하고 있죠?

1은 남성, 2는 여성 (2000년 이후 출생자는 3과 4로 구분한다고 하네요... ㅜㅜ)

 

 

주민등록번호 데이터에서 성별을 구분하는 뒤 7자리 중 첫 번째 자리를 B행에 구해보도록 합시다.

위의 데이터에서 성별 구분기호는 왼쪽에서부터 8번째("-"를 포함해서 카운트 합니다)에 있네요.

 

앞서 배운 MID함수의 사용법에 따라, B2셀에 =MID(A2,8,1)이라고 넣어주면!

 

IF함수를 사용해서 1은 남자, 2는 여자라고 표현할 수도 있겠습니다.

 

성별구분기호인 뒤 7자리 중 첫째 자리를 가져오게 됩니다.

=MID(A2,8,1)라는 수식을 잠시 살펴보면, 이런 뜻입니다.

"A2라는 데이터에서, 8번째 글자부터 1개만 가지고 와라."

 

 

2) LEN 함수  =LEN(text)

다음으로 알아볼 함수는 LEN함수입니다.

: 텍스트 문자열 내의 문자 개수를 구함.

 

아마도 '길이'를 뜻하는 영어단어 LENGTH에서 온 함수명일 거라고 생각이 되네요.

 

텍스트의 길이를 반환해주는 함수입니다. 간단한 예시를 하나 보겠습니다.

 

A1셀에 "LEN 함수를 알아봅시다."라는 텍스트가 있고, B1셀에서 바로 LEN함수를 사용해 봤습니다.

A1의 길이인 14를 반환하는 것을 확인하실 수 있습니다.

주의할 점은 한글이나 영문 뿐만 아니라 공백이나 구두점까지 다 카운트한다는 점입니다.

 

 

3) FIND 함수  =FIND(find_text, within_test, [start_num])

 

다음으로 알아야 하는 함수는 FIND함수입니다.

: 지정한 텍스트를 다른 텍스트 내에서 찾아 해당 문자의 시작 위치를 나타냄. 대/소문자 구분

 

엑셀 마법사에 있는 설명으로는 이게 무슨 함수인지, 딱 이해가 되지는 않습니다.

예시를 하나 들어볼게요.

 

"FIND 함수를 알아봅시다."라는 텍스트가 있습니다.

우리는 여기서 "함" 글자가 몇 번째 글자인지 알고 싶을 때, FIND 함수를 쓸 수 있습니다.

 

함수 안에 텍스트를 입력할 때는 항상 큰따옴표를 쳐주세요.

 

=FIND("함",A1)을 입력해서 "함"이 6번째 글자임을 확인할 수 있습니다.

FIND 함수의 3번째 인수인 [start_num]의 경우에는, 필수값은 아닙니다. (대괄호가 쳐져있는 인수는 항상 그렇습니다.)

이 값은 검색을 시작할 위치를 정하는 인수로,

만약 =FIND("함",A1,2)라고 하면 1번째 글자인 "F"를 제외하고 "I"부터 찾게 되는거죠. (결과값은 6으로 동일합니다.)

하지만, =FIND("함",A1,7)라고 하면 7번째 글자인 "수"부터 찾게 되므로, #VALUE! 오류가 발생하게 될 것입니다.

("수" 뒤에는 "함"이라는 글자가 없으므로!)

 

 

우리는 여태까지 텍스트 나누기 기능을 함수로 구현하기 위해, 이에 필요한 함수들을 배웠습니다.

LEFT, RIGHT, MID 등의 텍스트함수, LEN 함수와 FIND 함수를 배웠고, 이제 준비는 끝났습니다.

다음 포스팅에서는 이 함수들을 활용해서 실제로 어떻게 텍스트를 나눌 수 있는지 알아보도록 하겠습니다!

 

 

-계속-

댓글