- 최초 작성일: 2001-11-09
- 최종 수정일: 2026-09-29
- 조회수: 23 회
- 작성자: 권현욱 (엑셀러)
- 강의 제목: 휴일 알아내기
들어가기 전에
오래 전 엑셀 파일로 진행하던 강의를 웹 글로 복원한 것이라, "버튼을 눌러보세요"처럼 엑셀에서 직접 조작하라는 표현이 남아 있을 수 있습니다. 결과는 본문의 그림이나 표로 확인하실 수 있으며, 현재와 맞지 않는 내용은 보완하되 전반적인 스타일은 당시의 갬성(?)을 유지했습니다.
Q: 특정 날짜가 일요일이면 그 옆에 "휴일"이라고 표시를 하고 싶다면 어떻게 하면 될까요? A: "그것도 문제라고… 날짜를 입력해 놓은 다음 달력 가져와서 요일명을 주~욱 입력하고 If 함수를 써서 "일요일"인 경우 "휴일"이라고 표시하도록 하면 되잖아요!
물론 그렇게 해도 말리는 사람은 없겠지만 Exceller의 강좌를 보시는 분이라면 그렇게 노동 집약적인 작업(즉 과격한~ ^^) 방법을 사용하는 분은 아마 한 분도 안 계시리라 생각합니다. If 함수와 Text 함수를 사용하면 달력이 없어도 일요일을 찾아서 표시를 할 수가 있습니다.
휴일 알아내기
핵심 요약
- 날짜가 일요일인지 판단해 휴일 또는 안휴일을 표시하는 여러 함수 조합을 비교합니다.
- TEXT로 요일명을 비교하거나 WEEKDAY의 요일 번호를 직접 검사하는 방법을 사용할 수 있습니다.
- MID와 CHOOSE까지 조합하면 같은 목표를 서로 다른 함수 구성으로 해결하는 방법을 익힐 수 있습니다.
| 9/26/2026 | 안휴일 |
| 9/27/2026 | 안휴일 |
| 9/28/2026 | 안휴일 |
| 9/29/2026 | 안휴일 |
| 9/30/2026 | 안휴일 |
| 10/1/2026 | 안휴일 |
| 10/2/2026 | 안휴일 |
| 10/3/2026 | 안휴일 |
| 10/4/2026 | 안휴일 |
| 10/5/2026 | 안휴일 |
| 10/6/2026 | 안휴일 |
| 10/7/2026 | 안휴일 |
| 10/8/2026 | 안휴일 |
| 10/9/2026 | 안휴일 |
| 10/10/2026 | 안휴일 |
=IF(TEXT(B19,"aaaa")="일요일","휴일","안휴일")
간단한 수식이므로 설명을 드릴 필요도 없을 듯 합니다. Weekday 함수를 사용해도 됩니다.
| 9/26/2026 | 안휴일 |
| 9/27/2026 | 휴일 |
| 9/28/2026 | 안휴일 |
| 9/29/2026 | 안휴일 |
| 9/30/2026 | 안휴일 |
| 10/1/2026 | 안휴일 |
| 10/2/2026 | 안휴일 |
| 10/3/2026 | 안휴일 |
| 10/4/2026 | 휴일 |
| 10/5/2026 | 안휴일 |
| 10/6/2026 | 안휴일 |
| 10/7/2026 | 안휴일 |
| 10/8/2026 | 안휴일 |
| 10/9/2026 | 안휴일 |
| 10/10/2026 | 안휴일 |
=IF(WEEKDAY(B41)=1,"휴일","안휴일")
Weekday 함수는 "날짜에 해당되는 요일" 정보를 알려주는 함수입니다. (형식) Weekday(날짜, 리턴 형식). 리턴 형식은 반환되는 값의 종류를 결정하는 것으로 3가지 종류가 있습니다. 1 또는 생략: 1(일요일), 2(월요일),…,7(토요일) / 2: 1(월요일), 2(화요일),…,7(일요일) / 3: 0(월요일), 1(화요일),…,6(일요일)
다들 알고 계시는 Mid 함수를 사용해도 됩니다.
| 9/26/2026 | 안휴일 | 안휴일 |
| 9/27/2026 | 휴일 | |
| 9/28/2026 | 안휴일 | |
| 9/29/2026 | 안휴일 | |
| 9/30/2026 | 안휴일 | |
| 10/1/2026 | 안휴일 | |
| 10/2/2026 | 안휴일 | |
| 10/3/2026 | 안휴일 | |
| 10/4/2026 | 휴일 | |
| 10/5/2026 | 안휴일 | |
| 10/6/2026 | 안휴일 | |
| 10/7/2026 | 안휴일 | |
| 10/8/2026 | 안휴일 | |
| 10/9/2026 | 안휴일 | |
| 10/10/2026 | 안휴일 |
=IF(MID("일월화수목금토",WEEKDAY(B71),1)="일","휴일","안휴일")
또는 Choose 함수를 사용하여 이렇게도 표현이 가능합니다.
=IF(CHOOSE(WEEKDAY(B71),"일","월","화","수","목","금","토")="일","휴일","안휴일")
슬슬 신경질이 날라고 하지요? ^^ 한 가지만 가르쳐 줘도 될텐데 왜 이것 저것 잔뜩 가르쳐 줘서 사람을 헷갈리게 만들고 난리야!!! 하시는 분도 계실 듯 합니다.
요일을 알아내고 휴일인지 아닌지 표시를 하는 것이 중요한 것이 아닙니다! 중요한 것은 함수들을 어떻게 조합을 해서 원하는 목표를 달성할 수 있느냐 하는 것입니다. Exceller가 아는 함수는 20여 개를 넘지 않습니다. 단순히 함수의 이름을 아는 것은 제대로 아는 것이 아니라는 사실을 명심하시기 바랍니다.
아마 위에서 설명드린 것 이외에도 얼마든지 다른 방법이 있을 수 있습니다. 자신이 발견한(또는 이미 알고 계시는) 좋은 방법이 있다면 알려 주세요.
정리 — 일요일 판별 함수 조합 비교
| 방법 | 수식 |
|---|---|
| TEXT 사용 | =IF(TEXT(날짜,"aaaa")="일요일","휴일","안휴일") |
| WEEKDAY 사용 | =IF(WEEKDAY(날짜)=1,"휴일","안휴일") |
| MID 사용 | =IF(MID("일월화수목금토",WEEKDAY(날짜),1)="일","휴일","안휴일") |
| CHOOSE 사용 | =IF(CHOOSE(WEEKDAY(날짜),"일","월","화","수","목","금","토")="일","휴일","안휴일") |
자주 묻는 질문 (FAQ)
Q1. 날짜가 일요일인지 가장 간단하게 확인하려면 어떤 수식을 쓰나요?
=IF(TEXT(날짜,"aaaa")="일요일","휴일","안휴일") 수식이 가장 직관적입니다. TEXT 함수로 요일명을 문자열로 바꿔 비교하는 방식입니다.
Q2. WEEKDAY 함수의 리턴 형식은 어떤 의미인가요?
두 번째 인수를 생략하거나 1로 지정하면 1(일요일)~7(토요일), 2로 지정하면 1(월요일)~7(일요일), 3으로 지정하면 0(월요일)~6(일요일)로 반환됩니다.
Q3. MID나 CHOOSE 함수로도 같은 결과를 만들 수 있나요?
네. =IF(MID("일월화수목금토",WEEKDAY(날짜),1)="일","휴일","안휴일")이나 CHOOSE로 요일 문자를 나열해 비교하는 방식도 같은 결과를 냅니다. 함수 이름보다 조합하는 방법을 이해하는 것이 중요합니다.
마치며
같은 목표라도 TEXT, WEEKDAY, MID, CHOOSE 등 서로 다른 함수 조합으로 얼마든지 해결할 수 있습니다. 함수 이름을 아는 것보다 여러 함수를 상황에 맞게 조합하는 사고 방식을 익히는 것이 더 중요합니다.