본문 바로가기
잔머리 엑셀

잔머리 엑셀-특정 문구 여러 개에 한 가지 조건부서식 주기

by Lv. 34 라이츄 2024. 1. 5.

https://koreanraichu.tistory.com/323

 

잔머리 엑셀-조건부 서식으로 특정 문구가 들어간 것만 표시하기

차트를 스캔하다보면 이 차트가 어떤 차트였는지 간단하게 메모를 남길 때가 있다. 뭐 예를 들자면 너무 두꺼워서 한번에 스캔이 안되니까 나눠서 했다거나, 환자의 정보가 제대로 기재되지 않

koreanraichu.tistory.com

여기서 특정 문구가 들어간 행 전체에 조건부서식을 줘 봤는데, 이게 처음에는 좀 자잘자잘한 문제들만 있다가 점점 무슨 차팅을 아따구로 했나 싶은 개 총체적 난국인 문제들까지 터져서 거기에 대해 일일이 마킹을 했'었'다. 근데 이렇게 하니까 일단 조건부서식 관리도 빡세고 색깔이나 형식 이런게 겹치는 게 많아서 진짜로 중요한 거 몇 개만 남기고 다 지웠는데, 그 과정에서 조건부 서식 몇 개를 병합했다. 오늘은 이걸 어떻게 했는지를 서술해보도록 하겠다.

 

아니 나 워드프레스에 저 글 안올렸더라...


잔머리 블루프린트

1. 문제: 조건부서식 통폐합을 해야 하는데, 특정 문구 여러 개에 대해 한 가지 조건부 서식을 줄 수 없을까?
2. 사용할 함수: FIND, COUNT
3. 어떻게: COUNT함수와 FIND를 조합해 깔쌈하게 해결해봅시다.
4. 결과가 어떻게 나왔나: 특정 문구 여러 개에 대해 한 가지 조건부서식을 적용할 수 있게 되었다.


잔머리를 굴려보자

아니 근데 왜 COUNT함수가 나와요? 그건 읽다 보면 알게 될 것이다. 

 

일단 파이썬 해 본 사람들 중 문자열 다뤄 본 사람은 find가 뭔지 알 것이다. 그죠 문자열에서 특정 문자(혹은 문자열)의 위치를 출력하잖음. FIND 함수도 마찬가지다. 그래서 이전 글에서 =FIND("불꽃",$C3)>0를 준 것이다. 왜? 문자열이 있으면 위치를 출력할건데 위치가 0이 아니거든. 컴퓨터는 0부터 세긴 하지만 아무튼 넘어갑시다. 위 그림은 '닭 콩팥 훔친 집사'라는 문장에서 FIND 함수를 이용해 콩팥의 위치를 찾은 것이다. 아무튼, 그래서 왜 COUNT가 나왔어요? 그걸 이제 보여주도록 하겠다.

 

FIND 함수를 이용해 위 문장에서 토끼를 찾은 결과가 저거다. 그렇다. FIND 함수는 찾고자 하는 문자열이 없으면 에러를 토해낸다. 그래도 OR함수랑 조합하면 둘 중 하나는 있으니까 될 것 같지만 그것도 에러뜬다. 내가 해봐서 알아요...

 

그럼 COUNT랑 쓰면요? =COUNT(FIND("콩팥",B2))를 쓰면 저렇게 나오는데 왜 그러냐면 FIND로 콩팥을 찾았는데 저기 있잖아. 그니까 하나 추가된거라고 보면 된다. COUNT함수와 함께 있을 때는 =COUNT(FIND("콩팥",B2), FIND("간장",B2))처럼 없는 단어가 있어도 오류를 토하지 않는다. 없는 단어가 있으면 걍 0임.

 

근데 우리 이것만 하고 끝날 거 아니잖아요? 조건부서식 걸 거잖아요? 그래서 예제를 또 준비했다.

 

7세대에 등장한 울트라비스트의 코드네임과 타입이다. 여기서 1타입이 바위타입이거나 독타입인 포켓몬을 파란색 글자로 강조할건데

 

지금 첫 행에 있는 텅비드가 바위/독타입이라 조건부서식이 걸렸으니 서식 복사를 해 보자. 수식은 =COUNT(FIND("바위",$D3)>0,FIND("독",$D3)>0)로 해도 되고 =COUNT(FIND("바위",$D3),FIND("독",$D3))로 해도 적용된다.

 

오 좋아 잘대쓰! 근데 둘이 무슨 차이인지 궁금하지 않아요? 난 궁금함.

 

솔직히 난 한쪽은 TRUE FALSE 뜰 줄 알았다...