본문 바로가기
하드웨어

엑셀날짜계산함수, 근무일·말일·학사일정 계산을 한 번에

by 피씨랜드 2025. 11. 12.
반응형

 

보고서에 마감일을 자동으로 뽑거나, 휴가 끝나는 날짜를 정확히 계산해야 할 때가 정말 많아요. 날짜는 겉으로는 단순해 보여도 주말·공휴일·월말 같은 예외가 끼면 금방 꼬이더라고요. 함수 이름도 비슷비슷해서 처음엔 뭘 써야 할지 망설이기 쉽죠. 하지만 기준만 잡아두면 생각보다 간단하게 해결되더라고요. 오늘은 가장 많이 쓰는 함수들을 목적별로 묶어, 언제 어떤 순서로 조합하면 되는지 깔끔하게 정리해볼게요.


🧭 날짜 계산의 방향부터 잡아볼게요

먼저 ‘며칠 뒤/전’, ‘월말/월초’, ‘영업일 기준’ 중 어디에 해당하는지부터 정리해요. 단순 일수 이동은 DATE, EDATE, EOMONTH로 충분하고, 주말을 건너뛰려면 WORKDAY가 편해요. 프로젝트 표지에는 엑셀날짜계산함수 기준을 한 줄로 적어 두고, 입력 셀엔 실제 날짜 형식만 받도록 유효성 검사를 걸어두면 실수가 확 줄어요.

DATE는 연·월·일을 따로 넣어 만드는 방식이라 텍스트로 들어온 값도 안전하게 처리해요. EDATE는 기준일에서 n개월 이동, EOMONTH는 말일을 바로 잡아줘서 계약 만료일 계산에 특히 좋아요. 시간까지 다룰 땐 DATE에 TIME을 더하면 깔끔해요.

마감일이 주말에 떨어지면 규칙을 먼저 정해야 해요. ‘다음 영업일로 이월’인지 ‘직전 평일로 앞당김’인지에 따라 결과가 달라지거든요. 이 선택은 나중에 보고서 해석에도 큰 영향을 주니 문서에 명시해 두세요.


📅 근무일·휴가·납기, 주말을 건너뛰는 법

영업일 기준 이동은 WORKDAY가 정석이에요. WORKDAY(기준일, 일수, [휴일범위])처럼 쓰고, 휴일표를 별도 시트로 만들어 이름을 붙여두면 관리가 쉬워요. 시작일 포함/제외 규칙도 처음에 정해두면 혼선이 덜해요. 마감 전날 알림이 필요하면 결과에서 1일을 빼 알림일을 따로 두면 돼요.

기간 사이의 영업일 수가 필요하면 NETWORKDAYS가 좋아요. NETWORKDAYS(시작, 종료, [휴일])는 시작·끝을 모두 포함해 세기 때문에, 종료 다음날을 넣어 실수를 줄이는 트릭도 자주 써요. 교대 근무처럼 주말이 다르면 WORKDAY.INTL로 패턴을 직접 지정하면 깔끔해요.

휴일표는 연초에 한 번만 만들어두고, 피벗처럼 재사용하세요. 공휴일이 늘어나도 참조만 바꾸면 모두 반영돼요. 이런 흐름을 템플릿으로 만들어 두면, 매년 갱신은 휴일표만 교체하면 끝. 마지막 줄엔 엑셀날짜계산함수 세트와 예시를 간단히 메모해두면 팀도 금방 따라와요.


🧮 차이 계산과 연령·근속, 기준을 통일해요

두 날짜 사이 일수는 종료-시작으로 끝나요. 다만 포함 범위 때문에 1일 차이가 자주 나요. 이벤트 기간 표기처럼 ‘첫날과 마지막 날을 모두 포함’이면 +1을 붙이고, 체류일·근무일처럼 ‘체크아웃/퇴근일 제외’ 규칙이면 그대로 두는 식으로 통일해요. 주 단위는 ROUNDDOWN(일수/7,0)이 간단해요.

연령·근속 계산은 DATEDIF가 깔끔해요. DATEDIF(시작, 종료, "Y")는 연수, "YM"은 개월, "MD"는 일수만 따로 구해요. 다만 공식 함수 목록엔 안 보여서 헷갈리기 쉬워요. 표준 보고서에 이 함수를 쓰면 주석으로 근거를 남겨두고, 계산 열 이름에 엑셀날짜계산함수 기준(연/월/일)을 함께 적어두면 설명이 빨라져요.

월별 집계는 EOMONTH로 경계일을 얻은 뒤, BETWEEN 논리로 필터링하면 안정적이에요. 분기·반기는 MONTH 함수로 월을 뽑아 CASE로 구간을 나눠도 깔끔하게 정리돼요.


🧷 말일·월초·분기초, 경계값 잡는 요령

월말은 EOMONTH(기준, 이동개월)로 바로 나와요. 기준이 15일이든 1일이든 상관없이 정확한 말일을 돌려줘서 회계 문서에 딱이에요. 월초는 EOMONTH(기준,-1)+1이면 끝. 분기초는 CHOOSE를 조합하거나, MONTH로 분기를 계산해 첫달 1일을 만들어줘요. 체크리스트 첫 줄엔 엑셀날짜계산함수 경계 공식 세트를 적어두면 복붙만으로 해결돼요.

말일 기준 만료일 계산도 자주 쓰여요. 예를 들어 ‘개통 다음 달 말일까지’는 EOMONTH(개통일,1)처럼 쓰면 되고, ‘말일에서 3영업일 전’은 WORKDAY(EOMONTH(기준,0),-3,휴일표)로 한 번에 정리돼요. 결재 마감처럼 오후 6시 같은 시간이 붙으면 DATE+TIME을 조합해 타임스탬프를 만들어요.

월 중간 종료의 일할 계산은 EOMONTH와 DAY를 함께 쓰면 편해요. 해당 월의 총 일수를 DAY(EOMONTH(기준,0))로 구해 분수로 나누면 깔끔해요. 이 규칙을 요금/급여/요율 표에 그대로 재사용하면 관리가 쉬워져요.


🧰 표준 템플릿과 데이터 정리, 재사용이 핵심

입력·계산·출력 시트를 분리하고, 계산 시트엔 오늘 날짜(TODAY)와 기준 표만 두면 관리가 가벼워요. 휴일표와 분기표는 이름을 정의해 참조하면 수식이 읽기 쉬워지고 오류도 줄어요. 날짜는 텍스트로 들어오기 쉬우니 변환 열을 따로 두고, 원본을 건드리지 않는 게 안전해요.

파워쿼리를 쓰면 외부 캘린더를 가져와 자동 갱신이 가능해요. 주말 패턴이 다른 팀이라면 WORKDAY.INTL 코드를 매개변수로 분리해 버튼 하나로 바꿀 수 있어요. 배포 전에는 샘플 10행으로 손검증을 꼭 해보세요. 실패 지점이 금방 보이더라고요.

보고서 하단엔 버전과 작성일, 그리고 템플릿이 기대하는 데이터 형식을 짧게 남겨요. 공유 폴더에는 변경 이력도 같이 보관하면 합의가 빨라져요. 마지막 줄에 엑셀날짜계산함수 모음표 링크만 있어도 신입이 바로 적응하더라고요.


🧯 자주 막히는 오류, 이렇게 잡으면 빨라요

날짜가 숫자로만 보이면 표시 서식 이슈일 가능성이 커요. 셀 서식을 날짜로 바꾸고, 원본이 텍스트면 VALUE나 DATEVALUE로 한 번 정리하세요. 1900/1904 기준차 때문에 하루씩 어긋나는 경우도 있으니, 다른 출처 파일과 합칠 땐 옵션을 확인해요.

휴일이 반영되지 않으면 범위 참조가 깨졌을 확률이 높아요. 이름 관리자에서 범위를 재지정하고, WORKDAY/NETWORKDAYS의 순서를 다시 점검해요. 계산 결과가 엇갈리면 포함 규칙이 다른 거라서, 문서 상단에 엑셀날짜계산함수 정책(포함/제외)을 적어두면 다음부터는 흔들리지 않아요.

DATEDIF 오류는 인수 순서나 단위 코드 오타가 대부분이에요. 코드가 대문자인지 확인하고, 종료가 시작보다 빠르면 오류가 나는 점도 기억하세요. 마지막으로 TODAY는 휘발성이라, 제출본은 값으로 고정해 두면 재현이 쉬워요.


날짜 계산은 규칙 싸움이더라고요. 포함 범위와 주말 처리만 합의해 두면 함수는 자연스럽게 따라와요. 오늘 정리한 흐름을 템플릿으로 저장해 두고, 다음 프로젝트부터 그대로 복붙해 보세요. 며칠만 지나도 휴일·말일·분기초 같은 까다로운 케이스가 한 번에 정리되고, 보고서 검수 시간도 눈에 띄게 줄 거예요.


🧠 알고 가면 훨씬 수월해요

Q. 주말이 토·일이 아니면 어떻게 설정하죠?
A. WORKDAY.INTL에서 패턴 코드를 바꾸면 돼요. 팀별 휴일표도 같이 연결하세요.

Q. 말일 기준 만료일은 어떤 함수가 좋아요?
A. EOMONTH로 말일을 구한 뒤 필요하면 WORKDAY로 영업일 보정을 해요.

Q. 연령 계산은 무엇으로 하나요?
A. DATEDIF(Y)로 연수를 구하고 YM, MD로 세부를 보완해요.

Q. 기간 일수를 포함/제외 기준으로 바꾸고 싶어요.
A. 종료-시작 뒤 +1을 붙이면 양끝 포함, 그대로면 종료일 제외예요.

Q. TODAY 때문에 값이 매일 바뀌어요.
A. 제출본은 값 붙여넣기로 고정해 재현성을 확보하세요.


반응형