엑셀의 DAYS 함수는 두 날짜 사이의 일수를 구해줍니다.
이름이 비슷한 DAY 함수가 있는데 이 함수는 날짜 값에서 날짜 부분만 숫자로 추출하는 함수입니다.
구문(Syntax)
DAYS(end_date, start_date)
두 날짜 사이의 일 수를 구해준다.
인수
- end_date : 종료일
- start_date : 시작일
주의 : 첫 번째 인수가 시작일이 아니고 종료일입니다. 종료일과 시작일을 거꾸로 입력하면 음수가 반환됩니다.
사용 예
셀에 입력된 값을 참조하여 일 수 구하기
=DAYS(C5,B5) => 30 (7/1부터 7/31 사이의 일 수)
이 예를 보면 7월 1일부터 7월 31일까지이면 31일이 되어야 할 것 같은데 왜 30일일까요?
DAYS 함수는 두 날짜 사이의 일 수를 구해주므로 시작일부터 종료일까지의 모든 일 수에서 1을 뺀 값을 구해줍니다. 만약에 업무의 성격이 모든 일 수를 포함해야 하는 경우라면 DAYS 함수의 결과에 1을 더해 주어야 합니다.
=DAYS(C7,B7) => -30 (7/31부터 7/1 사이의 일 수)
첫 번째 인수를 시작일, 두 번째 인수를 종료일을 넣으면 음수를 반환
=DAYS(C8,B8) => #VALUE 오류
두 번째 인수 시작일 '2022-07-33'은 잘못된 날짜이므로 오류 발생
=C9-B9 => 30 (7/1부터 7/31 사이의 일 수)
날짜 사이의 일 수는 DAYS 함수 대신 종료일에서 시작일을 빼는 수식으로도 가능
날짜를 문자열로 입력해서 일 수 구하기
다음과 같이 함수의 인수로 날짜를 문자열로 입력하고 일 수를 구할 수 있습니다.
=DAYS("2022-7-31","2022-7-1") => 30
=DAYS("2022-7-1","2022-7-31") => -30
=DAYS("2022-7-33","2022-7-31") => #VALUE!
관련 글
안녕하세요 MS 2010버전을 사용하고 있습니다.
= DAYS라는 함수는 없고, = DAYS360 만있는데, 여타 함수들도 없는게 많습니다.
어떻게 해결 해야 될까요?
감사합니다.
안녕하세요. DAYS함수는 2013버전부터 사용할 수 있습니다. 2010버전에서는 "=종료일-시작일" 수식으로 대신 일수를 구할 수 있습니다. DAYS함수처럼 다른 방식으로 해결할 수 있는 경우도 있고 그렇지 않은 경우도 있습니다. 그렇지 않은 경우에는 오피스 상위 버전을 설치해야 합니다.
여타 함수들도 없는게 많다고 하셨는데 어떤 것이 안되는지 알려주시면 다른 방법이 있는 지 찾아보겠습니다.
감사합니다.
몇개월을 구하고 싶은데요
예를들어 2020.10.11~2020.12.10 : 2달
이라는 값을 내고 싶은데..
혹시 함수로 알 수 있을까요?
DATEDIF함수를 이용하시면 됩니다. DATEDIF(시작일,종료일,"M"), 그런데 다음 식과 같이 끝날짜가 하루 더 많아야 정확히 2개월로 계산해 줍니다.
=DATEDIF("2020-10-11","2020-12-11","M")
혹시 수식이 작동하지 않으면 쌍따옴표를 키보드에 있는 쌍따옴표로 다시 입력해 보세요.