강좌 및 설정/엑셀 ITQ 출제 함수

엑셀 함수 WEEKDAY(첫번째)

웹 개발자의 비상 2023. 8. 12. 13:52

WEEKDAY 함수는 간단하게 말하자면 날짜에서 요일을 반환하는 함수입니다.

말로는 너무 쉽습니다. 그런데 엑셀의 날짜 표시 형식을 모르신다면 그렇게 간단하지만은 않습니다. 만약 모르신다면 셀 표시형식 "날짜"의 이해 강좌를 꼭 보신후 날짜 표시형식에 대한 개념을 숙지하신 뒤 아래 내용을 확인해 주시기 바랍니다. 그리고 추가로 DATE 함수에 대한 이해도 필요합니다. 엑셀 함수 - 날짜(DATE, TODAY) 강좌도 꼭 확인하시길 바랍니다. 이번 강좌는 날짜 서식을 이해하고 계시고 DATE함수를 사용하실 수 있다는 가정하에 진행됩니다.

 

WEEKDAY

날짜(날짜 서식 참조 또는 DATE함수로 사용한 날짜 일련번호)에서 해당하는 요일을 숫자로 반환합니다
WEEKDAY(serial_number,[return_type])
  • serial_number - 요일을 찾을 날짜(날짜 서식 또는 DATE함수로 반환된 날짜를 나타내는 일련번호)
  • [return_type] - 요일을 어떤 순서로 반환할지 결정하는 숫자

 

먼저 serial_number을 알아보겠습니다. 여기에는 반드시 날짜의 서식으로 입력된 값이 들어와야합니다. 날짜 서식으로 작성된 셀의 값을 참조하는 방식으로 주로 사용하고 굳이 날짜를 직접입력해야 한다면 DATE함수로 날짜 서식 형태로 변경해서 사용해야 합니다. 그렇지 않으면 잘못된 값을 반환합니다. 

그럼 일단 한번 사용해 보겠습니다. 오늘은 2023년 8월 12일 토요일입니다. 그래서 오늘로 WEEKDAY함수를 사용하면

 

 

그림처럼 7 값을 반환합니다. 현재는 [return_type] 인수는 사용하지 않았습니다. 그럼 이 반환된 7은 무엇을 의미할까요?

 

이전 강좌에서 CHOOSE함수에 대해 알아 보았는데요. 나열된 어떤 값들을 명칭이 아닌 순서로 골라내는 것이었습니다. WEEKDAY도 순서로 반환한다는 점에서는 비슷한 면이 있습니다. 일반적으로 달력을 보면 요일은 일요일부터 토요일로 표시되어있습니다. 그래서 순서를 매기자면

 

 

이렇게 표현할 수 있을 겁니다. 즉 7은 토요일을 의미하는 것이 됩니다. 오늘 요일이죠.

 

하지만 우리가 일반적으로 한주의 시작을 의미할때는 월요일을 생각합니다. 즉 순서를 월요일을 첫날, 바로 숫자 1로 생각하는 것이죠. 그렇다면 일요일은 숫자 7이 되겠죠. 그리고 다른 예로 어떤 행사의 첫날이 수요일이라면 수요일을 행사의 첫날 즉 숫자 1로 생각해 볼 수도 있습니다. 이경우에는 화요일이 7이 되겠네요

이것이 바로 [return_type]의 역할입니다. 내가 원하는 요일부터 숫자를 매길수 있는 것이죠.

그래서 return_type을 생략하면 가장 기본이 되는 달력형태. 즉 일요일을 1로 토요일을 7로 반환하게 됩니다.

 

return_type에 따라서 시작순서를 정하는 방법은 다음과 같습니다.

 

 

주로 사용하는 것은 1과 2이고요 1은 위와같이 생략하셔도 됩니다. 만약 행사가 수요일부터 시작이어서 반환값 1을 수요일로 사용하고 싶다면 return_type은 13을 사용하시면 되겠습니다. 11과 2은 동일합니다. 저의 경우 굳이 2가 있는데 왜 11이 있을까라고 생각해본적이 있었는데요. 알수는 없었습니다. 대략 예측을 하자면 

 

이런식으로 기본 return_type에 숫자들 더하는 식으로 만들기위해 없어도되는 11이 생긴가 아닐까합니다.

728x90