이번 글에서는 엑셀 숫자만 추출하는 방법에 대해서 정리해 보도록 하겠습니다. 엑셀을 사용할 때는 많은 함수를 사용할 수 있는데요. 이런 함수를 어떻게 쓰느냐에 따라 시간을 얼마나 효율적으로 사용할 수 있는지가 달라지게 됩니다. 예를 들어 123호, 236호 등 숫자와 문자로 이루어진 셀이 있을 경우 여기서 숫자를 추출하려 할때는 직접 셀의 내용을 보고 숫자를 따로 적어 줄 수도 있지만, 셀의 길이가 100건만 되도 손으로 적어 주는 것은 굉장히 비효율적입니다. 셀에서 일부 텍스트만 추출해주는 함수를 사용하면 이 문제를 간단하게 해결 할 수 있습니다.
TABLE OF CONTENTS
SUBSTITUTE 함수로 숫자만 추출하는 방법
SUBSTITUTE 함수는 셀의 원본값에서 일부 글자를 떼어낸 나머지 값을 반환하는 합수입니다. 위의 예를 보시면 쉽게 알 수 있는데요. 원본값에서 제외할 텍스트를 함수에 적어주면 됩니다.
=SUBSTITUTE (원본셀, "제외할 텍스트", "")
LEFT, RIGHT, MID 함수로 숫자만 추출하는 방법
LEFT, RIGHT, MID 함수는 원본셀에서 일부 텍스트만 추출하는 함수입니다. 예를 들어 LEFT 함수의 경우 앞에서 몇 글자까지 추출할지, RIGHT 함수의 경우 뒤에서 몇 글자를 추출할지 설정해 주면 해당 값만 반환하게 됩니다.
=LEFT(원본셀,왼쪽에서 몇번째까지 추출할지)
=RIGHT(원본셀, 오른쪽에서 몇번째까지 추출할지)
MID함수는 원본셀에서 몇번째 글자부터 몇개를 추출할지 선택할 수 있습니다. 예를 들어 “책392페이지”라면 MID(“책392페이지”,2,3) 을 입력하면 2번째 글자부터 3개의 글자를 추출합니다. 결과값은 392가 됩니다. (캡쳐화면에는 함수식이 잘못 들어가 있습니다.)
FIND함수를 사용하여 복합적으로 사용할 수 있습니다. 예를들어 강의실302호 라는 값에서 숫자 302만 추출하고 싶다면, FIND(“호”,원본값)-3 하면 “호”라는 글자 3번째 앞 글자를 선택하여 그 글자부터 3번째 숫자까지 추출하라라는 함수를 아래 처럼 설정할 수 있습니다.
=MID(원본셀,FIND("찾을글자",원본셀)-찾을글자앞몇번째글자,추출할숫자자리수)
만약 원본값이 날짜 형식이라면 MID 함수나 LEFT, RIGHT 함수등 텍스트를 추출하는 함수로는 원하는 결과값이 나오지 않습니다. 이럴때는 간단하게 YEAR, MONTH, DAY 함수를 이용하여 년, 월, 일을 숫자로 추출할 수 있습니다.
복합 함수로 셀에서 추출하는 방법
만약 위와 같은 방법들로 해결이 안될만큼 다양하고 불규칙적으로 숫자가 섞여있는 셀에서 숫자만 추출하기 위해서는 함수를 복합적으로 사용하면 가능합니다.
MID, ISNUMBER, LARGE, SUMPRODUCT, ROW 함수를 이용하여 만들어진 서식인데요. 1에서 50까지는 원본셀의 값이 50글자가 넘지 않는다는 가정으로 만들어진 것이므로 실행속도를 위해 범위를 줄이거나 셀의 값에 맞춰 늘릴 수 있습니다.
=SUMPRODUCT(MID(0&원본셀,LARGE(ISNUMBER(--MID(원본셀, ROW($1:$50),1))ROW($1:$50),ROW($1:$50))+1,1) 10^(ROW($1:$50)-1))
이 함수는 MID 함수로 원본셀에서 숫자를 먼저 하나 하나 분리한 다음 그것이 숫자인지 아닌지를 ISNUMBER 함수를 통해 확인합니다. 그렇게 숫자들만 추출한 다음 그걸 자리에 맞게 10승씩 곱하여 합치는 방법으로 숫자를 추출하는 것인데요. 작동원리가 궁금하다면, 함수 하나 하나를 테스트하며 공부해보시는 것도 좋을 것 같습니다.
오늘은 엑셀에서 숫자만 추출하는 방법에 대해서 알아봤습니다.