구글 스프레드시트로 만년형 달력을 만들어 보겠습니다. 그리고, 해당 월이 아닌 일자는 회색 표시를 해보는 조건부 수식을 사용하는 방법까지 정리해 보겠습니다.
오늘 구현해 볼 달력은 이렇습니다.

현재는 2024년 11월입니다. 11월은 30일까지 있고, 11월 1일은 금요일입니다.
그래서 1일 이전인 10월 31일까지는 회색으로 글자 색을 변경하였습니다.
만년형 달력이기 때문에 12월 시트를 생성하면 12월에 맞게 달력 숫자가 변경되도록 만들어볼 것입니다.
구글 스프레드시트로 만년형 달력 만들기
지난 시간에..
지난 시간에는 이중 드롭다운을 만들어보았습니다.
저는 앞서 이중 드롭다운을 구성하면서 보호 및 숨김처리를 한 열이 있습니다.
오늘 달력을 만들어서 조건부 서식을 사용해야 하는데요,
그러기 위해서는 기준이 될 날짜가 필요합니다. 그래서 저번에 저는 저번 시간에 숨김처리했던 열을 이용하였어요.
이전 글은 아래 링크를 참조해 주세요. 보고 오시는 것을 추천드립니다.
구글 스프레드시트 이중 드롭다운 만드는 방법 (엑셀 가계부 만들기)
구글 스프레드 시트에서 드롭다운 기능을 사용할 수 있습니다. 저는 대항목을 선택한 뒤 그 선택한 대항목에 맞는 소항목을 드롭다운화 하는 이중 드롭다운 작업방법을 작성해 보도록 하겠습니
likeasummer.tistory.com
기준일자 지정하기
저는 제 '11월'이라는 시트의 A2 셀에 기준일자를 적어두었습니다.
기준 날짜란 해당 월의 초일입니다.

=DATE('항목'!C2,M2,1)
위의 함수를 사용하였습니다.
DATE 함수는 DATE(년, 월, 일) 형식으로 사용합니다.
즉, 세 값이 필요한 함수입니다.
저는 '항목' 시트의 C2열에 연도를 작성해 놓았습니다.
그래서 그 값(2024)과
현재 시트 M2에 월(11)
마지막은 1을 입력하여
'2024. 11. 1' 즉, 이번달 초일의 값을 리턴 받았습니다.
달력 형태 만들기
달력 크기와 모양은 원하는 대로 잡아도 무방합니다.
저는 7x11 크기로 잡았고, 일요일부터 시작하는 달력으로 요일을 적었습니다.

그리고, 맨 첫 번째 셀(P7)에 아래처럼 작성하였습니다.
--1번
=A2-WEEKDAY(DATE('항목'!C2,M2,1),2)
--2번
=DATE('항목'!C2,M2,1)-WEEKDAY(DATE('항목'!C2,M2,1),2)
1번, 2번 아무거나 사용하셔도 됩니다.
1번은 A2 셀에 기준일자를 지정해 놨으니 그 값을 그대로 이용한 차이뿐입니다.
2번 기준으로 설명드리자면
=DATE('항목'!C2,M2,1)-WEEKDAY(DATE('항목'!C2,M2,1),2)
각각 노란색, 파란색 두 파트로 나눠보겠습니다.
노란색은 위에서 기준 일자로도 작성했던 11월의 초일입니다.
파란색 WEEKDAY 함수는 요일을 숫자로 반환하는 함수입니다.
WEEKDAY(날짜, 형식)
저는 형식을 2로 지정하였습니다. 2는 월요일부터가 1로 시작합니다. 아래 구글 도움말을 참조하세요.

즉, 11월 초일에서 11월 초일의 요일을 숫자로 변환한 만큼 빼준 날짜가 리턴되는 것입니다.
2024.11.1 - 5 = 2024.10.28이 되겠죠.
WEEKDAY 함수의 형식을 1로 지정하였다면
=DATE('항목'!C2,M2,1)-WEEKDAY(DATE('항목'!C2,M2,1),1) + 1
이처럼 하루를 더 더해주는 방식으로 사용하면 되겠습니다.
달력 날짜 채우기
이제 여기서부터는 복잡하지 않습니다.

다음 날짜부터는 기준일자를 잡아둔 P7셀로부터 +1 하루씩 증가시키면 됩니다.
P8 셀에는 하루 전인 =V7+1을 하고
P9 셀에는 =V8+1을 입력해 주면 됩니다.
각 행의 첫 음만 입력하고 아래처럼 드래그하면 자동으로 채워집니다.

날짜 형식 변경하기
이건 선택사항입니다.
현재는 연월일 다 보이는데요, 저는 달력이니 일자만 나오게 하고 싶습니다.
그래서 형식 변경을 하였습니다.
달력을 다 블록지정하고 '서식 더 보기 > 맞춤 날짜 및 시간' 메뉴를 선택하여

일자만 표시되도록 변경하였습니다.

여기까지 잘 되셨다면 이런 모습일 것입니다.

조건부 서식 생성
이제 조건부 서식만 생성하면 됩니다!
현재는 11월 이전인 10월 27일부터 날짜가 보이는데요, 이 날짜들은 전월이니 자동으로 글씨색을 회색으로 변경하려고 합니다.
일단 달력을 블록지정 한 뒤, 마우스 우클릭 '셀 작업 더보기 > 조건부 서식'을 클릭합니다.

그리고 맞춤 수식을 선택하여 아래처럼 입력합니다.

=MONTH(P7) <> MONTH($A$2)
이 수식의 뜻을 설명하자면,
초반에 A2셀에 기준일자를 적어놨었죠,
그 기준 월과 다른 월일 경우 글자색을 회색으로 변경하겠다는 의미입니다.
P7셀의 월과 A2셀의 월인 11월을 비교하여 다르면 글자색을 회색으로 변경하는 것이죠.
마무리
오늘의 목표가 완성되었습니다!!

저는 조건부 서식을 더 이용하여 일요일엔 빨간색, 토요일엔 파란색으로 글씨 색을 변경하였습니다.
이것은 위에서 이용했던 WEEKDAY 함수를 이용하여 조건부 서식을 생성해 주었습니다.
이런 식으로 응용도 가능하겠어요!
물론, 제가 하는 방법이 모두 정답이 아니기 때문에 더 쉬운 방법들이 있을 수도 있겠어요.
더 좋은 방법이 있으시다면 댓글로 공유 부탁드려요~

그럼 오늘도 좋은 하루 보내세요~!
'구글 스프레드시트' 카테고리의 다른 글
구글 스프레드시트로 차트 만들기 (엑셀 가계부 만들기) (0) | 2024.11.21 |
---|---|
구글 스프레드시트, 엑셀 SUMIF 함수 사용 방법 (엑셀 가계부 만들기) (2) | 2024.11.18 |
앱 스크립트로 스프레드시트 다른 시트의 값, 활성화 시트 이름 가져오기 (엑셀 가계부 만들기) (1) | 2024.11.15 |
구글 스프레드시트 이중 드롭다운 만드는 방법 (엑셀 가계부 만들기) (7) | 2024.11.14 |
구글 스프레드시트 드롭다운 생성 방법 (엑셀 가계부 만들기) (10) | 2024.11.11 |