안녕하세요. 오늘은 특정문자가 포함된 문자를 찾는 방법에 대해 알려드리려 합니다.
와일드카드 문자라고 해서 *,~,?가 있지만 if를 포함하여 이 와일드카드가 통하지 않는 함수가 몇몇이 있죠.
그래서 와일드카드를 사용하지 않고도 특정문자가 포함된 문자를 찾을 수 있도록 함수를 써 보겠습니다.
아래 3가지 함수만 알면 특정문자가 포함된 문자를 찾고 변환하는 것까지 할 수 있으니 참고하시기 바랍니다.
1. search 함수
=search(찾을 문자, 찾을 문자가 있는 셀)
위의 엑셀을 보면 용도에 단기차입금이 단기차입금(부모님), 단기차입금(물품)으로 서로 다릅니다.
지금은 2개 밖에없어서 단기차입금으로 통일하고 sumif를 사용할 때 조건에 단기차입금을 조건으로하여 사용해도 되지만, 이런 경우가 여러개라면 다 고치기 힘들겠죠.
그래서 단기차입금(~~)을 단기차입금으로 함수를 통해 바꾸어주고 조건을 맞춰줘보겠습니다.
즉 특정문자가 들어간 셀을 찾는 방법이라고도 할 수 있는데요. 단기차입금이라는 문자를 찾는 과정인 셈이죠.이럴 땐 search함수를 사용해줍니다.
=search 함수의 인수는 찾을 문자, 어디서 찾는가로 이루어져있습니다. 뒤의 start_num은 무시하셔도 됩니다.
=search(찾을 문자, 어디서 찾을 것인가)
우리는 '단기차입금'이라는 문자를 찾을 것이고, 어디서는 '용도가 있는 셀에서' 이죠.
적용을 시키면 이렇게 될 수 있겠네요.
이렇게 하고 엔터를 치면 1이라는 숫자를 반환하고, 아래로 쭉 드래그를 해보겠습니다.
차이가 보이시죠? 단기차입금이라고 입력된 셀에는 숫자를, 단기차입금이라는 문자가 없는 곳에는 오류값을 반환합니다.
search함수는 찾으려는 문자가 그 셀안에서 몇 번째 있는지를 숫자로 반환하는 함수입니다.
지금 단기차입금(~~)는 단기차입금이라는 문자가 1번째에 있으므로 1을 반환한 것이죠.
만약 (물품)단기차입금이라면 search 함수를 사용했을 때 5라는 숫자를 반환할 겁니다.
(,물,품,),단기차입금 이렇게 하나씩 인식해 단기차입금이 있는 곳은 5번째 이기 때문입니다.
2. isnumber 함수
=isnumber(값이 있는 셀)
그리고 여기서 isnumber라는 함수로 true, false를 나타내 봅시다.
isnumber는 숫자면 true, 아니면 false를 반환하는 함수입니다.
3. if 함수
=if(논리식, "참일 경우 반환할 값","거짓일 경우 반환할 값")
그런 다음 if를 통해 true일 경우 단기차입금이라고 반환하고, 아닐 경우 공란으로 반환해줍니다.
그럼 이런식으로 단기차입금(~~)를 단기차입금이라고 문자를 통일할 수가 있겠네요.
이렇게 해주면 와일드카드를 사용하지 않고도 특정문자를 포함하는 문자를 찾고, 원하는 형태의 문자로 값을 반환할 수 있습니다.
감사합니다.
'엑셀' 카테고리의 다른 글
직장인이 많이 쓴는 함수 1. 조건에 맞는 엑셀 합 구하기 sumif (0) | 2022.06.30 |
---|---|
엑셀 가장 많이 사용되는 날짜 계산 datedif, days (0) | 2022.05.28 |
부동산 수익률 계산에 필요한 엑셀 기본 VLOOKUP, HLOOKUP에 대해서 계산연습해보자! (0) | 2020.03.14 |