공부하는 세돌이/세순이 키우기

엑셀에서 특정 문자열 이후의 내용 추출하기 ft right, len, find

허리띠를졸라매자 2024. 7. 12. 11:59
반응형

이유는 모르겠지만 위와 같은 Excel 파일이 있으며 저는 적요 뒤에 위치한 카드사와 카드번호를 따로 추려야 하는 상황입니다.

 

 

 

RIGHT(문자열을 추출할 셀값, [추출할 문자수])

 

right 함수의 경우 위와 같은 구조인데... 특정 셀의 오른쪽 끝에서부터 역방향으로 원하는 문자수만큼을 추출해 줍니다.

위의 경우에는 "하나카드1134"라는 8개의 문자열을 추출해야 하므로 수식을 아래와 같이 작성하면 되겠습니다.

 

 

=right(F2,8)

 

이렇게 추출할 문자열의 글자의 개수가 같은 경우에는 일이 쉬운데 그렇지 않은 경우들도 있습니다.

 

 

LEN(길이를 확인할 문자열)

 

그런 상황에 사용할 수 있는 LEN 함수가 있습니다.

 

위와 같이 수식을 입력하면 F2 셀의 텍스트 문자열의 길이인 '14'라는 값을 반환하며 문자열의 길이를 셀 때는 공백도 문자로 계산됩니다.

 

위의 값은 전체 문자열의 길이인데 우리가 필요한 것은 "/" 문자 이후의 문자열의 길이이므로 다른 함수가 하나 더 필요합니다.

 

 

FIND(찾으려는 문자열, 값을 찾을 셀값, [start_num])

 

파인트 아니고 파인드 함수를 사용하면 되는데 위와 같이 수식을 입력하면 "/" 문자열이 위치한 '1코 2리 3아 4마 5트 6/'라는 문자열 개수인 '6'의 값을 반환합니다.

 

위의 len 함수와 같이 엮어 생각하면 전체 문자의 개수에서 "/" 문자열이 시작하는 위치의 값을 빼주면 "/" 뒤의 문자열의 개수가 나옵니다.

 

[start_num]은 비워두면 됩니다.

 

그러니 두 함수를 아래와 같이 합쳐줍니다.

LEN(F2)-FIND("/",F2)

 

 

마지막으로 다시 가장 위에 소개한 right 함수에서 [추출할 문자수]에 위의 값을 반영해 주면 원하는 대로 "/" 문자열 이후의 값이 추출됩니다.

=RIGHT(F2,LEN(F2)-FIND("/",F2))

 

 

함수의 이름에서 예측할 수 있듯이 왼쪽의 값을 가져오는 left 함수도 존재하며 중간의 어느 값을 가져오는 함수로는 mid 함수가 있습니다.

 

 

LEFT, LEFTB 함수 - Microsoft 지원

 

LEFT, LEFTB 함수 - Microsoft 지원

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다. 커뮤니티를 통해 질문하고 답변하고, 피드백을 제공하고, 풍부한 지식을 갖춘 전문가의 의견을 들을

support.microsoft.com

 

 

MID 함수 - Microsoft 지원

 

MID 함수 - Microsoft 지원

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다. 커뮤니티를 통해 질문하고 답변하고, 피드백을 제공하고, 풍부한 지식을 갖춘 전문가의 의견을 들을

support.microsoft.com

 

 

 

예전에 일용지급명세서의 수정신고가 전자신고가 되지 않던 시절... 어느 일을 잘 모르는 세무사가 조사관에게 부탁하여 기존에 신고한 일용지급명세서를 삭제하고 다시 전체를 제출하면 될 것을, 수천 명이 되는 일용지급명세서를 세무서 제출용 지급명세서 서식으로 서면으로 출력하여 제출한 적이 있습니다.

 

수기로 작성하지 않는 이상 해당 파일의 작성은 당시에 사무실에서 가능한 사람은 저뿐이라 제가 해당 작업을 했었는데, 일용직을 신고할 때 세무회계사무실에서 받는 원시자료는 보통은 엑셀파일이고, 수정할 데이터를 받은 것도 엑셀 파일이었습니다.

 

당시에 자료를 가공하여 모지리 세무사가 원하는 대로 출력하고 보니 지급명세서가 천 장 이상이 나왔던 것 같은데... 사실 이 정도 분량이면 수기로 작성을 해도 꽤나 긴 시간이 필요하고, 작업자의 실수가 생길 수 밖에 없고, 작성을 한 이후에도 소기업이 대부분인 세무사사무실의 인력으로는 작업자들의 실수를 걸러내기가 거의 불가능에 가깝습니다.

 

 

당시에 지급명세서 양식을 엑셀로 만들고 원시 데이터에서 각 칸에 맞게 주민번호를 추출하는데 left, mid, right 함수를 유용하게 사용하여 수시간 내에 작업을 마무리한 기억이 있습니다.

 

 

당시의 일을 생각하니 또 화가 나네요,,,

틀딱은 실무자에겐 재앙입니다.

반응형