Computer >> 컴퓨터 >  >> 소프트웨어 >> Office

엑셀 양식 컨트롤로 동적 달력 만들기 – 단계별 완벽 가이드

엑셀 양식 컨트롤로 동적 달력 만들기 – 단계별 완벽 가이드

엑셀은 코드를 전혀 사용하지 않고도 완전한 달력을 만들 수 있는 기본 기능과 수식을 제공합니다. 양식 컨트롤(Form Controls)을 활용하면 사용자가 다양한 월과 연도를 자유롭게 탐색할 수 있는 동적 달력 인터페이스를 엑셀에서 손쉽게 구현할 수 있습니다.

이 튜토리얼에서는 양식 컨트롤을 사용해 엑셀에서 완전한 달력 인터페이스를 만드는 방법을 단계별로 소개합니다.

개발 도구 탭 활성화하기

리본 메뉴에 개발 도구(Developer) 탭이 보이지 않는다면, 리본 사용자 지정 옵션에서 먼저 활성화해야 합니다.

  • 파일 탭 >> 옵션을 선택합니다.
  • 리본 사용자 지정을 선택합니다.
  • 오른쪽 패널에서 개발 도구 확인란에 체크합니다.
  • 확인을 클릭합니다.

1단계: 워크시트 레이아웃 만들기

워크시트 레이아웃 구성:

  • 새 엑셀 통합 문서를 엽니다.
  • 새 워크시트를 만들고 이름을 "Calendar"로 변경합니다.
  • 기본 구조를 설정합니다:
    • 1행: 달력 제목 영역
    • 3행: 월 및 연도 선택 컨트롤
    • 5행: 요일 머리글(Sun, Mon, Tue 등)
    • 6~11행: 달력 그리드(모든 월의 배치를 수용할 수 있도록 6행으로 구성)

엑셀 양식 컨트롤로 동적 달력 만들기 – 단계별 완벽 가이드

요일 머리글 입력 및 월·연도 목록 작성:

  • 월 목록을 입력합니다(예: Jan부터 Dec까지).
  • 원하는 연도 목록을 작성합니다(예: 2025년, 2026년~2036년).
  • 요일 머리글을 나열합니다(예: Sun, Mon부터 Sat까지).

엑셀 양식 컨트롤로 동적 달력 만들기 – 단계별 완벽 가이드

2단계: 날짜 선택 컨트롤 만들기

  • 개발 도구 탭 >> 삽입 >> 양식 컨트롤을 선택합니다.
  • 콤보 상자(ActiveX 버전이 아닌 양식 컨트롤)를 선택합니다.
  • B3 셀에 콤보 상자를 그립니다.

엑셀 양식 컨트롤로 동적 달력 만들기 – 단계별 완벽 가이드

  • 콤보 상자를 마우스 오른쪽 버튼으로 클릭 >> 컨트롤 서식을 선택합니다.

엑셀 양식 컨트롤로 동적 달력 만들기 – 단계별 완벽 가이드

  • 개체 서식 대화상자에서 다음을 설정합니다:
    • 입력 범위: I열의 월 목록(I2:I13)을 선택합니다.
    • 셀 연결: J2를 지정합니다(선택된 월 번호가 저장됩니다).
    • 드롭다운 줄: 12로 설정합니다.
    • 확인을 클릭합니다.

엑셀 양식 컨트롤로 동적 달력 만들기 – 단계별 완벽 가이드

연도 선택 드롭다운 추가:

  • D3 셀에 콤보 상자를 하나 더 삽입합니다.
  • 개체 서식 대화상자에서 다음을 설정합니다:
    • 입력 범위: K열의 연도 목록(K2:K12, 2020~2039년)을 선택합니다.
    • 셀 연결: L2를 지정합니다(시작 연도를 기준으로 한 선택된 연도 번호가 저장됩니다).
    • 드롭다운 줄: 10으로 설정합니다.
    • 확인을 클릭합니다.

엑셀 양식 컨트롤로 동적 달력 만들기 – 단계별 완벽 가이드

3단계: 달력 로직용 보조 셀 설정하기

M열에 달력 계산에 필요한 보조 수식을 만듭니다.

현재 월 번호:

  • M2 셀을 선택하고 다음 수식을 입력합니다.

현재 연도:

  • M3 셀을 선택하고 다음 수식을 입력합니다.

월의 첫째 날:

  • M4 셀을 선택하고 다음 수식을 입력합니다.

첫째 날의 요일(0=일요일, 1=월요일 등):

  • M5 셀을 선택하고 다음 수식을 입력합니다.

월의 일수:

  • M6 셀을 선택하고 다음 수식을 입력합니다.

엑셀 양식 컨트롤로 동적 달력 만들기 – 단계별 완벽 가이드

4단계: 달력 그리드 수식 만들기

달력 그리드는 여러 수식을 조합하여 각 셀에 표시할 날짜(있는 경우)를 결정합니다.

  • A6 셀을 선택하고 다음 수식을 입력합니다.
  • A6의 수식을 G11까지 드래그하여 복사합니다.
=IF((ROW()-ROW($A$6))*7+COLUMN()-COLUMN($A$6)+1<=$M$5,"",IF((ROW()-ROW($A$6))*7+COLUMN()-COLUMN($A$6)+1-$M$5>$M$6,"",(ROW()-ROW($A$6))*7+COLUMN()-COLUMN($A$6)+1-$M$5))

이 수식은 달력 그리드의 각 셀에 올바른 날짜 숫자를 생성합니다:

  • 그리드 내 위치를 기준으로 각 셀에 표시할 일(day) 번호를 계산합니다.
  • 월의 첫째 날 이전 칸(<=$M$5)은 비워둡니다.
  • 계산된 일 번호가 해당 월의 일수보다 크면(>$M$6) 비워둡니다.
  • 그 외의 경우에는 해당 날짜 셀에 올바른 일 번호를 표시합니다.

엑셀 양식 컨트롤로 동적 달력 만들기 – 단계별 완벽 가이드

5단계: 서식 및 스타일 적용하기

  • 5행(A5:G5)을 선택 >> 굵게 서식을 적용합니다.
  • 배경색을 연한 파란색으로 지정합니다.
  • 달력 범위(A6:G11)를 선택합니다.
  • 테두리를 적용합니다:
    • 탭 >> 테두리 >> 모든 테두리를 선택합니다.
  • 텍스트를 가운데 정렬합니다:
    • 탭 >> 맞춤 >> 가운데 맞춤을 선택합니다.
  • 가독성을 높이기 위해 행 높이를 25로 설정합니다.

엑셀 양식 컨트롤로 동적 달력 만들기 – 단계별 완벽 가이드

6단계: 조건부 서식 적용하기

주말용 조건부 서식:

  • 달력 범위(A6:G11)를 선택합니다.
  • 탭 >> 조건부 서식 >> 새 규칙을 선택합니다.
  • 수식을 사용하여 서식을 지정할 셀 결정을 선택합니다.
  • 다음 수식을 입력합니다:
=AND(A6<>"", OR(COLUMN(A6)=1, COLUMN(A6)=7))
  • 주말 셀이 빨간색 배경과 흰색 글꼴로 표시되도록 서식을 설정합니다.
  • 확인을 클릭합니다.

엑셀 양식 컨트롤로 동적 달력 만들기 – 단계별 완벽 가이드

오늘 날짜용 조건부 서식:

  • 달력 범위를 선택합니다.
  • 조건부 서식 규칙을 하나 더 만듭니다.
  • 다음 수식을 입력합니다:
=AND(ISNUMBER(A6), DATE($K$2, $J$2, A6) = TODAY())
  • 굵은 글씨와 연한 파란색 배경으로 서식을 설정합니다.
  • 확인을 클릭합니다.

엑셀 양식 컨트롤로 동적 달력 만들기 – 단계별 완벽 가이드

달력 계산 영역 숨기기:

  • 보조 열(예: I, J, K, L, M열)을 선택합니다.
  • 마우스 오른쪽 버튼 클릭 >> 숨기기를 선택합니다.

엑셀 양식 컨트롤로 동적 달력 만들기 – 단계별 완벽 가이드

완성된 달력 인터페이스:

엑셀 양식 컨트롤로 동적 달력 만들기 – 단계별 완벽 가이드

7단계: 달력 테스트하기

  • 다양한 월과 연도를 선택해 봅니다.
    • 1월(January)
    • 2026년

엑셀 양식 컨트롤로 동적 달력 만들기 – 단계별 완벽 가이드

  • 실제 달력과 비교하여 엑셀 달력이 정확하게 표시되는지 확인합니다.

엑셀 양식 컨트롤로 동적 달력 만들기 – 단계별 완벽 가이드

마무리

위 단계를 따라 하면 양식 컨트롤을 활용해 엑셀에서 완전한 달력 인터페이스를 만들 수 있습니다. 하나의 시트에서 드롭다운으로 월과 연도를 선택하기만 하면 달력이 자동으로 업데이트됩니다. 이 달력은 대화형으로 동작하며 원하는 연도까지 자유롭게 확장할 수 있습니다. 기본 구조에 익숙해지면 일정 관리, 색상별 이벤트 표시, 다른 엑셀 데이터 소스와의 연동 같은 고급 기능도 추가로 구현할 수 있습니다.