1. 문제

'엑셀..하루에 하나씩' 카페에 올라온 질문인데,
근무자의 주휴일이 F열에 있고, 근무 실적이 G열부터 날짜별로 있을 때
주휴일에 근무했다면 색칠을 해서 구분하기 좋도록 해달라는 질문입니다.
예를 들어 나한상의 경우 주휴일이 월인데, 월요일인 3일, 10일에 근무했으므로 색칠이 돼야 합니다.
2. 해결 방법
전형적인 조건부 서식의 문제이며,
두 가지 조건, 다시 말해 근무일이 주휴일에 해당하고 근무시간이 0보다 커야 합니다. 다시 말해 홍길동의 경우 주휴일이 수인데, 수요일인 5일은 근무하지 않았으므로 색칠이 되면 안 됩니다.
가. 해결 과정 1 - 실패
범위를 근무 실적이 있는 G5에서 AK14까지 지정하고,
조건부 서식 - 새 규칙 - '수식을 사용하여 서식을 지정할 셀 결정'을 클릭하고

수식 입력 줄에
=AND(LEN(G5),OFFSET(G5,4-ROW(G5),0)=$F5)
라고 입력합니다.
수식에 대해 설명하면
AND는
LEN(G5)라고 해서 "근무 시간이 0보다 큰 경우"라는 조건과
OFFSET(G5,4-ROW(G5),0)=$F5라고 해서,
G5셀에서 위로 한 줄 올라 간 셀의 값이 F5 다시 말해 "수"인 조건(근무일이 주휴일인지)
2개를 연결하는 것입니다.
그리고, 4-ROW(G5)는 5행이면 -1이 돼야 하고, 6행이면 -2가 돼야 하기 때문에 4-행수이므로 4-row(g5)라고 한 것입니다.
그리고, 아래 서식 버튼을 클릭한 후, 채울 색을 녹색으로 지정하고,

확인, 확인 버튼을 눌러 조건부 서식 지정을 완료합니다.
그런데, 녹색이 하나도 칠해져 있지 않습니다.

나. 해결 과정 2 - 성공
"왜 안되지, 안되지?" 하다가 생각해 보니, And 조건을 *로 지정해야 하나 보다" 하고
조건부 서식 - 규칙 관리를 누른 다음

규칙 편집 버튼을 누르거나 수식 입력 줄을 더블 클릭한 후

수식을
=LEN(G5)*(OFFSET(G5,4-ROW(G5),0)=$F5)
라고 *를 이용해 수정하고 확인, 확인 버튼을 누르니

홍길동의 경우 수요일인 5일에는 색칠이 안되고, 19일에 색칠이 되는 등 잘됩니다.
조건부 서식 지정할 때 And는 안되고, *는 되는 것을 이제야 알았네요.
'Excel' 카테고리의 다른 글
주휴일 근무시 색칠하기(조건부 서식) (2) (0) | 2025.04.21 |
---|---|
필지고유번호(PNU)에 해당하는 주소 구하기 (0) | 2025.04.08 |
알PDF의 심박한 엑셀 변환 기능 (0) | 2025.01.26 |
근속기간(날짜) 정렬 문제 (0) | 2024.10.22 |
2중 드롭다운 메뉴(데이터 유효성 검사) (0) | 2024.10.16 |