엑셀 요일 구하기 — WEEKDAY·TEXT 함수로 날짜에서 요일 표시하기

최종 업데이트 2026-08-17

근태표나 일정표를 만들다 보면 날짜만 보고는 무슨 요일인지 한눈에 파악하기 어렵습니다. 엑셀에는 날짜에서 요일을 자동으로 뽑아주는 함수가 두 가지 있는데, 숫자로 뽑는 WEEKDAY와 텍스트로 바로 뽑는 TEXT입니다. 상황에 맞게 골라 쓰면 됩니다.

TEXT 함수 — 요일을 한글로 바로 표시

가장 간단한 방법은 TEXT 함수에 서식 코드 'aaa' 또는 'aaaa'를 지정하는 것입니다. A2에 날짜가 있다면 다음과 같이 씁니다.

=TEXT(A2, "aaa")

'aaa'는 '월', '화'처럼 한 글자로, 'aaaa'는 '월요일'처럼 전체 이름으로 표시합니다. 요일 앞뒤로 괄호를 붙이고 싶다면 서식 코드를 "(aaa)"처럼 감싸면 됩니다.

=TEXT(A2, "(aaa)")

WEEKDAY 함수 — 요일을 숫자로 뽑아 조건 판단에 활용

=WEEKDAY(날짜, [반환유형])

WEEKDAY는 요일을 숫자(1~7)로 반환합니다. 반환유형을 생략하거나 1로 지정하면 일요일이 1, 월요일이 2, …, 토요일이 7입니다. 반환유형을 2로 지정하면 월요일이 1, 일요일이 7이 되어, 주의 시작을 월요일로 보는 우리나라 관행과 더 잘 맞습니다.

=WEEKDAY(A2, 2)

주말·평일 구분하기

WEEKDAY 결과를 IF와 조합하면 주말·평일을 자동으로 구분할 수 있습니다. 반환유형 2 기준으로 6(토요일), 7(일요일)이면 주말입니다.

=IF(WEEKDAY(A2, 2)>=6, "주말", "평일")

OR 함수로 요일 이름을 직접 비교하는 방법도 있습니다. TEXT로 뽑은 요일이 '토'나 '일'이면 주말로 표시합니다.

=IF(OR(TEXT(A2,"aaa")="토", TEXT(A2,"aaa")="일"), "주말", "평일")

공휴일까지 반영한 근무일 판단

단순 주말뿐 아니라 공휴일까지 제외한 '실제 근무일'을 판단하려면 NETWORKDAYS 함수를 씁니다. 시작일과 종료일 사이의 근무일 수를 구하고, 세 번째 인수로 공휴일 목록 범위를 지정하면 해당 날짜들을 자동으로 제외합니다.

=NETWORKDAYS(시작일, 종료일, 공휴일범위)

예를 들어 프로젝트 기간(A2~B2) 중 실제 근무일수를 공휴일 목록(E2:E20)을 반영해서 구하려면 =NETWORKDAYS(A2, B2, E2:E20) 로 계산합니다. 회사마다 근무 요일이 다르면 NETWORKDAYS.INTL 함수로 특정 요일을 휴무일로 지정할 수도 있습니다.

조건부서식으로 주말 행 자동 강조

근태표에서 주말 행 전체에 배경색을 자동으로 넣고 싶다면, 표 전체를 선택한 뒤 조건부서식 → 새 규칙 → 수식 사용에 다음을 입력하면 됩니다(A열이 날짜, 2행부터 시작 기준).

=WEEKDAY($A2,2)>=6

자주 나는 오류와 주의사항

  • 요일이 영어로 나올 때: 시스템 언어 설정에 따라 TEXT의 aaa 서식이 'Mon'처럼 영어로 나올 수 있습니다. 셀 서식을 한국어(로캘 ko-KR)로 지정하거나, 문서 자체의 언어 설정을 확인하세요.
  • WEEKDAY 반환유형 헷갈림: 기본값(1)은 일요일 시작, 2는 월요일 시작입니다. 조건부서식이나 IF 조건을 짤 때 어떤 유형을 썼는지 반드시 확인하세요.
  • 날짜가 텍스트로 입력된 경우: '2026-07-04'처럼 보여도 실제로는 텍스트일 수 있습니다. 이 경우 WEEKDAY·TEXT 모두 #VALUE! 오류를 냅니다. DATEVALUE로 먼저 날짜로 변환하세요.
  • NETWORKDAYS 공휴일 범위: 공휴일 목록이 실제 '날짜' 형식이어야 합니다. 텍스트로 입력된 날짜는 무시됩니다.
💡

요일별 근무수당이나 배차 규칙처럼 요일에 따라 다른 처리가 필요할 때는 WEEKDAY로 숫자를 구한 뒤 CHOOSE 함수와 조합하면 수식 하나로 요일별 로직을 깔끔하게 처리할 수 있습니다.

WEEKDAY 반환유형 전체 옵션표

반환유형1(월요일) 값설명
1 또는 생략2일요일=1, 월요일=2, …, 토요일=7
21월요일=1, 화요일=2, …, 일요일=7
30월요일=0, 화요일=1, …, 일요일=6
111월요일=1, …, 일요일=7 (2와 동일, ISO식 표기)

실무에서는 반환유형 2를 가장 많이 씁니다. 근무표나 조건부서식처럼 '월요일부터 시작하는 한 주'를 기준으로 로직을 짤 때 숫자 순서가 직관적으로 맞아떨어지기 때문입니다.

WEEKDAY + CHOOSE 조합 — 요일명을 직접 지정하기

TEXT 함수의 'aaa' 서식은 시스템 언어 설정에 영향을 받지만, WEEKDAY와 CHOOSE를 조합하면 언어 설정과 무관하게 항상 원하는 텍스트를 표시할 수 있습니다.

=CHOOSE(WEEKDAY(A2), "일", "월", "화", "수", "목", "금", "토")

WEEKDAY의 기본 반환유형(일요일=1)을 그대로 활용해, CHOOSE의 값 목록도 일요일부터 순서대로 나열했습니다. 요일 뒤에 '요일'을 붙이거나 영문으로 바꾸고 싶다면 CHOOSE 안의 텍스트만 수정하면 됩니다.

TEXT vs WEEKDAY, 언제 무엇을 쓸까

상황추천 함수이유
화면에 요일 텍스트만 표시하면 됨TEXT(A2,"aaa")가장 짧고 간단함
요일에 따라 조건 판단·분기 처리가 필요WEEKDAY숫자이므로 IF·CHOOSE와 조합하기 쉬움
언어 설정이 다른 여러 사용자와 공유하는 문서WEEKDAY + CHOOSE시스템 로캘과 무관하게 항상 동일한 텍스트 출력
요일·근무일 계산 수식 AI로 바로 만들기 →

함께 보면 좋은 글