2011. 8. 18. 10:27

액셀에 특정 셀에 들어있는 문자나 문자열의 개수 구하는 함수가 없었군요.
당연히 있을 줄 알았는데-_-;;

여튼 구해주는 함수가 없으므로 직접 구해야 하는데,....
방법은 몇 가지 있겠지만 제가 쓰는 방법은 LEN과 SUBSTITUTE를 이용하는 방법입니다.

LEN(문자열) - 문자 갯수를 출력함
SUBSTITUTE(문자열, 찾을 문자열, 교체할 문자열) - 문자열에서 찾을 문자열을 찾아 교체할 문자열로 교체해줍니다.

 

 

포함된 문자개수만 필요하다면

'd'의 개수를 구하는 수식은..셀이 'A1'이라고 한다면..
=LEN(A1)-LEN(SUBSTITUTE(A1,"d",""))

= 문자열 길이 - 지정한 문자열을 제외한 문자열 길이



위 수식으로는 한 글자만 가능합니다.

SUBSTITUTE로 찾을 문자를 빈칸으로 바꾸면 찾을 문자가 빠진 문자열을 가져올 수 있습니다.
이 문자열의 개수를 기존 문자열의 개수에서 빼주면 원하는 문자의 갯수를 알 수 있죠.

문제는 문자열의 경우는 먹히지 않습니다.

 

 

문자열로도 찾고 싶다면

문자열로도 찾으려면 한 단계만 더 있으면 됩니다.
=(LEN(A1)-LEN(SUBSTITUTE(A1,"da",""))) / LEN("da")
= (문자열 길이 - 지정한 문자열을 제외한 문자열 길이) / 지정한 문자열 길이



=(LEN(A1)-LEN(SUBSTITUTE(A1,"da","")))
이 수식으로 얻은 개수는
찾을 문자열 개수 *  찾은 개수
가 됩니다.

그러니 찾은 개수로 결과를 나누면 원하는 문자열이 몇 개 포함된지 알 수 있습니다.


이거 많이 쓰는 함수인데.....없는걸까요 제가 못 찾는 걸까요 ㅡ.-;;;