날짜 연산은 + 또는 -를 이용할 수도 있지만, DateDif, Days, NetWorkdays를 이용해 구할 수도 있습니다.
1. +, - 이용
가. -
아래와 같이 시작일과 종료일을 입력한 다음 기간을 구하려고 하는데, 날짜가 연-월-일로 표시되지 않고 월, 일로 표시됩니다.
따라서, A2셀과 B2셀을 마우스로 끌어서 선택한 다음
홈 탭 > 표시형식 그룹에서 표시 형식 콤보 상자를 누르고 '간단한 날짜'를 클릭해서 연-월-일 형식으로 바꿉니다.
C2셀에 =b2-a2라고 입력하고 엔터키를 누르면 3이 구해집니다.
4/5 첫째 날이 포함되지 않았는데(초일 불산입), 포함하려면(초일 산입) +1을 하면 됩니다.
나. +
2023-04-05부터 5일 후 날짜를 구하려면 2023-04-05에 5를 더하면 됩니다.
셀 주소를 참고하기 때문에 =A2+E2가 됩니다.
이것의 단점은 근무일 기준이 아니라는 것입니다.
근무일을 기준으로 할 때는 NetWorkdays 또는 NetWorkdays.Intl 함수를 사용해야 합니다.
다. 며칠 전 계산
며칠 전을 계산할 때는 -를 사용하면 됩니다.
2. DateDif 함수
DateDiff가 아니고, DateDif라는 점, 그리고 함수 목록에 나오지 않는다는 점을 주의해야 합니다.
함수 목록에는 없지만 왼쪽 아래 도움말 링크를 누른 후
Microsoft 고객 지원 사이트에서 오른쪽에 있는 검색 아이콘을 누른 후
datedif라고 입력하고 엔터 키를 누르면
아래와 같이 DATEDIF 함수에 대한 도움말이 표시됩니다.
가. 구문
DATEDIF(start_date,end_date,unit)
(1) 인수
인수 | 설명 |
start_date 필수 |
주어진 기간의 첫 번째 또는 시작 날짜를 나타내는 날짜입니다. 날짜는 따옴표로 묶인 텍스트 문자열(예: "2001-01-30"), 일련 번호(예: 1900 날짜 체계를 사용할 경우 2001년 1월 30일을 나타내는 값인 36921), 다른 수식 또는 함수의 결과(예: DATEVALUE("2001-01-30"))로 입력할 수 있습니다. |
end_date 필수 |
종료일을 나타내는 날짜입니다. |
Unit | 반환하려는 정보의 형식입니다. |
(2) Unit별 반환 값
Unit | 반환 값 |
"Y" | 해당 기간에 포함된 전체 연도 수 |
"M" | 해당 기간에 포함된 전체 개월 수 |
"D" | 해당 기간에 포함된 날짜 수 |
"YM" | start_date와 end_date의 개월 차이. 두 날짜의 일과 연도는 무시됩니다. |
"YD" | start_date와 end_date의 날짜 차이. 두 날짜의 연도는 무시됩니다. |
(3) 에러 값
start_date가 end_date보다 큰 경우 #NUM! 에러 발생
나. 예제
(1) 시작날짜와 종료 날짜를 텍스트 형식으로 입력할 수 있습니다.
(2) 시작일이 종료일보다 크면 #NUM! 에러가 발생합니다.
(3) 셀 주소를 이용해 시작일과 종료일, Unit을 입력할 수 있습니다.
시작일과 종료일의 열이 고정되도록 A와 B에 $표시를 붙였고, Unit 행을 고정하도록 4에 $표시를 했습니다.
Unit을 "Y"로 입력하면 #NUM! 에러가 발생하는데,
왜 그런가 하고, C$4 부분을 마우스로 끌어서 선택한 후
결괏값을 알기 위해 F9키를 누르니 """Y"""으로 "Y"가 아니라서 에러가 났습니다. 그래서 모두 큰따옴표 없이 Y, M, D 식으로 입력했습니다.
(4) Unit에 따른 결괏값 분석 1
C5셀 값 2 : 연도가 2년 차이이므로 2라고 표시된 것임
D5셀 값 23 : 포함된 월수가 2년을 넘으므로 24+1 = 25가 된 것임
E5셀 값 764 : 종료일 - 시작일임
F5셀 값 1 : 연도, 일과 무관하게 월의 차이를 구하는 것으로서 1 달이므로 1이 구해진 것임. Unit이 M이면 포함된 월수이므로 24가 아닌 25가 반환되는데 YM이면 연도와 무관하게 월의 차이이므로 1이 반환됨
G5셀 값 34 : 연도와 무관하게 두 날의 차이로서 4/8 - 3/5 하니 34가 구해진 것임
(5) Unit에 따른 결괏값 분석 2
B6셀의 값을 4/3로 변경하면 Y는 동일하게 1인데, 포함된 월수 M은 1년 하고 1달이 안되므로 12가 구해지고,
YM은 월의 차이인데, 1달이 안되므로 0이 구해졌습니다.
'Excel' 카테고리의 다른 글
몇 달 전후의 날짜 구하기 - Edate 함수 (0) | 2023.04.11 |
---|---|
날짜간의 차이 계산(2) : Days 함수 (0) | 2023.04.06 |
조견표에서 일치하는 값 찾기(3) - Aggregate 함수 (0) | 2023.04.04 |
조견표에서 일치하는 값 찾기(2) - 이름 관리자, Offset, Match, Indirect 함수 (0) | 2023.04.03 |
조견표에서 일치하는 값 찾기(1) - SumIfs, Sum(if 배열 수식 (0) | 2023.03.31 |