본문 바로가기

엑셀자료실

엑셀 만년달력만들기(캘린더, 일정관리)

반응형

직장인이 자주 사용하는 것 중 하나가 일정관리를 도와주는 도구일 것이다. 일정관리를 위해 스마트폰 어플, 컴퓨터(PC)용 프로그램 등 다양하겠지만 일반적으로 아웃룩 또는 네이버 등에서 제공하는 일정관리를 즐겨 사용하지 않을까 싶다.

 

오늘은 엑셀함수의 간단한 기능을 이용해 원하는 년도 월별 달력을 만들자. 이렇게 만든 엑셀 달력을 A4 한장에 맞춰 인쇄되도록 인쇄설정을 하면 2015년도 1월에서 12월까지 업무용 일정관리(캘린더)를 활용할 수 있다. 또한, 2070년까지 출력이 가능하도록 제작되어 만년달력으로 활용할 수도 있지 않을까?

 

 

엑셀로 완성된 만년달력(일정관리)의 특징은

- 희망하는 년도, 월 선택은 "개발도구-삽입-양식컨트롤-스핀단추"로 삽입하여 컨트롤

- 조건부서식으로 해당월 날짜가 아닌 경우 글자색과 배경색을 회색으로 달리 표현

- A4 한장에 맞춰 출력되도록 인쇄영역 설정

- 셀서식에서 날짜를 왼쪽, 위로 맞춤으로 메모공간을 늘림

 

날짜 셀(B4 ~ H8)에 적용된 수식은 첫번 째 셀(B4)을 제외하곤 모두 이전 날짜에 하루를 더한 값으로 동일하다.

첫번 째 셀인 B4셀은 이전 월의 마지막 날짜를 구하는 =K1-L1+1 수식을 적용하고 나머지셀 =B4+1 수식으로 구할 수 있다.

 

 

엑셀 만년달력을 만들기 위해 초기값을 K~O 셀에 설정

날짜, 날짜의 해당하는 요일, 해당월의 마지막날짜를 그림처럼 해당셀에 입력한다.

 

(K1셀) =DATE(N1,O1,1)
(L1셀) =WEEKDAY(K1)
(M1셀) =DAY(DATE(YEAR(K1),MONTH(K1)+1,0))

 

만년달력에 포함된 엑셀함수를 살펴보면

Date 날짜함수는 앞서 다루며 알고 있으리라 생각된다.

Weekday 날짜함수는 날짜에 해당하는 요일을 반환하는 함수로 기본적(리턴 타임 생략시)으로 요일은 1(일요일)에서 7(토요일) 사이의 정수로 제공된다. 예제를 보면 WEEKDAY(K1) 반환값은 2로 월요일부터 시작됨을 알 수 있다.

Day 날짜함수는 제공된 날짜에서 일에 대한 일련 번호를 반환하며 일은 1에서 31 사이의 정수로 제공된다. 예제는 6월의 마지막 날짜를 찾기 위해 DAY(DATE(YEAR(K1),MONTH(K1)+1,0)) 구문으로 6월에 +1하여 7월에서 하루 뺀 날짜를 반환하도록 적용되었다.

 


 

※ 월의 마지막 날짜를 구하는 경우 해당월에 +1 하여 하루를 뺀(-1) 날짜로 구하면 쉽다.

 - day 날짜함수는 1일에서 31일 사이의 일을 나타내는 양의 정수나 음의 정수
 - day가 지정된 달의 날수보다 크면 그 값을 지정된 달의 첫째 날짜에 더하여 day가 계산. 예를 들어 DATE(2008,1,35)는 2008년 2월 4일을 나타내는 일련 번호를 반환
- day가 1보다 작으면 그 값과 1의 합을 지정된 달의 첫째 날짜에서 빼는 방식으로 day가 계산. 예를 들어 DATE(2008,1,-15)는 2007년 12월 16일을 나타내는 일련 번호를 반환

 

 

희망년도가 정수 외에 입력되지 않도록 N1 셀값은 데이터 유효성에서 정수로 제한한다.

 

 

년도와 월을 선택하는 기능으로 "개발도구-삽입-양식컨트롤"에서 스핀단추를 추가한다.

 

 

 

스핀단추에서 마우스 우클릭 후 컨트롤서식을 그림처럼 설정한다. 스핀단추가 동작되면 "셀 연결"값에 반영되도록 설정하면 엑셀 저장 후 다시 실행할때 마지막 값으로 적용된다.

 

 

 

A4용지 한장에 맞춰 출력되도록 인쇄영역을 설정한다. 그리고 인쇄 옵션에서 용지를 가로 방향으로 설정하고 한 페이지에 모든 열 맞추기로 꽉 찰 수 있도록 설정한다. 인쇄영역 설정이 궁금하다면 아래 이전글을 참조

 

[엑셀기초] - 엑셀 A4용지 한장에 맞춰 출력, 선택영역만 인쇄하기

 

 

엑셀 예제파일로 첨부된 엑셀 만년달력(캘린더)을 살펴보면 해당월의 날짜를 제외하곤 모두 회색으로 글자색과 배경색 채우기가 된 것을 알 수 있다.

 

조건부서식을 이용하여 $B$4:$H$8 날짜를 표기하는 대상셀을 모두 선택하고 MONTH(B4)<>MONTH($K$1) 수식으로 각각의 셀이 해당월과 동일한지 비교하여 서식을 적용한다.

 

 

 

토, 일요일은 평일과 구분되도록 셀서식으로 달리 설정하면 간단한 엑셀 만년달력 만들기가 끝이난다. 회사에서 업무용으로 일정관리를 위해 인쇄할 수 있도록 만든 엑셀 예제로 파일을 내려받아 요긴하게 사용될 수 있기를 바라며

 

엑셀예제파일-엑셀 만년달력(캘린더).xlsx

 


반응형