スプレッドシートでカレンダーを作る方法|自動更新・土日と祝日の色付けも解説

「Googleカレンダーとは別に、自由に書き込めるカレンダーが欲しい」「毎回日付を手入力するのが地味に面倒…」。

スプレッドシートを使えば、こうした悩みは意外と簡単に解決できる。

この記事では、1つのセルに日付をサッと入力する裏ワザから、月替わりで自動更新する本格的なカレンダーの作り方、土日や祝日に自動で色をつける方法まで、チョコちゃんと一緒に会話形式で解説していく。

セルに日付をサクッと入力する裏ワザ

ねえリュージ、セルに日付を入力するとき、いつも「2026/8/26」みたいに手打ちしてるんだけど、面倒なんだよね…

それなら、まず日付を1回入力しておいて、そのセルをダブルクリックしてみて。

あ!小さいカレンダーが出てきた!ここから日付選べるんだね。

そう。日付が入力されているセルなら、ダブルクリックするだけでカレンダーが表示されて、クリックで日付を選べるんだ。

これ知らなかった!毎回手入力してたの何だったんだろう…

スケジュール表とかで日付を何度も変更する場面で特に便利だよ。ただし、これはあくまで「1つのセルに日付を入れる」ときの話。今月のスケジュール全体を一覧できるようなカレンダー表を作りたいなら、もう少し準備が必要なんだ。

日付が入力済みのセルはダブルクリックすることでカレンダーが表示され、クリックするだけで日付を選択・変更できる。1つのセルに日付を素早く入力したいだけの場合は、この方法がもっとも手軽である。

月替わりで自動更新するカレンダーの土台を作る

じゃあ、1ヶ月分のカレンダーを表として作りたいときはどうするの?

まず、基準になる日付(たとえば2026/9/1)をA1セルに入力して、その下の行に「日・月・火・水・木・金・土」の曜日を入力しておくんだ。

そこからどうやって日付を並べていくの?

1週目の最初の日付を入れるセルに「=A1-(WEEKDAY(A1)-1)」って数式を入れるんだ。WEEKDAY関数が基準日の曜日を数字で返してくれるから、それを使って「その週の日曜日」を逆算できるんだ

難しそうだけど、1回作れば使い回せそうだね。あとの日付は?

右隣のセルには「=1つ左のセル+1」、2週目の頭のセルには「=1週目の頭のセル+7」を入れて、あとはコピーするだけ。カレンダーの最下段まで一気に日付が埋まるよ。

基準日を変えたら全部の日付が自動で更新されるってこと?

そういうこと。基準日のセルをダブルクリックしてカレンダーから見たい月の1日を選ぶだけで、表全体が自動で切り替わるよ。

月替わりで自動更新するカレンダーは、基準日と曜日ヘッダーを用意したうえで、WEEKDAY関数を使って最初の日曜日を逆算し、そこから1日ずつ・1週間ずつ加算する数式を組むことで作成できる。基準日のセルを変更するだけで表全体の日付が自動で切り替わる。

見た目を整える(日付表示・年月表示)

数式のままだと「2026/09/07」みたいに表示されて長くない?

そうだね。日付の範囲を選んで「表示形式」→「数字」→「カスタム数値形式」を開いて、「d」とだけ入力すれば、日にちの数字だけが表示されるようになるよ。

「9月」って見出しも大きく表示したいな。

基準日のセルをカレンダーの幅に合わせてセル結合して、同じくカスタム数値形式で「yyyy年mm月」と入力すれば、見出しとして大きく表示できるよ。

「表示形式」→「数字」→「カスタム数値形式」から、日付セルには「d」、見出しセルには「yyyy年mm月」といった記号を指定することで、見た目を整えたカレンダーに仕上げられる。

土日に自動で色をつける

土日ってやっぱり色をつけたほうが見やすいよね。

うん。「表示形式」→「条件付き書式」からカスタム数式を使えば自動化できるよ。日曜日は「=WEEKDAY(A3)=1」、土曜日は「=WEEKDAY(A3)=7」で判定できるんだ。

空白のセルにまで色がついちゃったりしない?

いいところに気づいたね。WEEKDAY関数は空白セルを「1899/12/30(土曜日)」として扱ってしまうから、そのままだと空白セルにも色がついてしまうんだ。「=AND(A3<>””, WEEKDAY(A3)=7)」のように「空白ではない」条件を足しておくと安心だよ。

条件付き書式のカスタム数式でWEEKDAY関数を使う場合、空白セルが土曜日として誤判定されることがあるため、「セルが空白でない」という条件(AND関数)を組み合わせておくと誤表示を防げる。

祝日にも自動で色をつける方法

土日はわかったけど、祝日は?平日扱いのままだと見落としそう…

実はWEEKDAY関数だけだと祝日は判定できないんだ。だから、あらかじめ祝日の日付リストを別シートやカレンダーの隅の列に用意しておく必要があるよ。

リストを用意したら、そのあとは?

条件付き書式のカスタム数式でCOUNTIF関数を使うんだ。祝日リストを例えば「祝日!A:A」という範囲に置いたとして、「=COUNTIF(祝日!$A:$A, A3)>0」という数式を条件に設定すれば、リストに載っている日付だけ自動で色がつくよ。

なるほど、リストと照合してるだけなんだね!これなら毎年リストを更新するだけで使い回せそう。

そのとおり。土日の条件付き書式と祝日の条件付き書式は両方設定しておいて、優先したい色のルールを上に並べ替えておくと、表示が崩れずきれいに仕上がるよ。

祝日は関数だけでは自動判定できないため、あらかじめ祝日の日付を別シートやセル範囲にリストとして用意しておき、条件付き書式のカスタム数式にCOUNTIF関数を組み合わせることで自動的に色をつけられる。土日の条件と祝日の条件を併用する場合は、ルールの並び順にも注意するとよい。

縦型のスケジュール表にしたいときは?

マス目のカレンダーじゃなくて、1日ずつ縦に並んだ表にしたいときはどうするの?

その場合は、基準日から下方向に「=1つ上のセル+1」をコピーして1ヶ月分の日付を並べるよ。曜日は隣の列に「=TEXT(A2,”ddd”)」と入力すれば、日付から自動で曜日を表示できる。

色付けも同じ考え方でいけそう?

そう。さっきのWEEKDAY関数やCOUNTIF関数を使った条件付き書式は、そのまま縦型のスケジュール表にも応用できるよ。タスク管理や日報の土台としても使いやすい形だね。

縦型のスケジュール表は、基準日から1日ずつ加算する数式で日付を並べ、TEXT関数で曜日を自動表示させることで作成できる。土日・祝日の色付けの考え方は月間カレンダーと共通しており、そのまま応用できる。

まとめ:目的別カレンダーの使い分け早見表

やりたいこと方法
1つのセルにサッと日付を入力したい日付セルをダブルクリックしてカレンダーピッカーから選択
月替わりで自動更新するカレンダー表が欲しい基準日+WEEKDAY関数で土台を作成
見た目を整えたいカスタム数値形式(d/yyyy年mm月)を設定
土日を自動で色分けしたい条件付き書式+WEEKDAY関数(空白セル対策も忘れずに)
祝日も自動で色分けしたい祝日リストを用意し、条件付き書式+COUNTIF関数
縦型のスケジュール表にしたい日付を縦に並べ、TEXT関数で曜日を自動表示

カレンダーってこんなに自由に作れるんだね!僕もタスク管理表に応用してみようかな。

うん。まずは日付ピッカーみたいな手軽な機能から使ってみて、必要になったら月間カレンダーや祝日の色付けにステップアップしていくといいよ。

スプレッドシートでのカレンダー作成は、単純な日付入力から本格的な月間カレンダー、土日・祝日の自動色分けまで幅広く対応できる。目的に応じて必要な機能を組み合わせることで、Googleカレンダーとは異なる自由度の高いスケジュール管理表を作ることができる。

関連記事

  1. スプレッドシートで「あの人が何を編集したか」を確認する方法

  2. スプレッドシートをスマホで改行するには?Enterで確定されてしまう問題を解決

  3. Googleスプレッドシートのピボットテーブルの作り方(初心者がつまずくポイント付き)

  4. スプレッドシートのプルダウンの作り方|色付け・連動・複数選択まで解説

  5. スプレッドシートが重い・固まる時に試すべき7つの対処法

  6. スプレッドシートの日付自動入力、実は「ずれる」「変わる」の落とし穴に注意!

  7. Googleカレンダーを共有するやり方!家族・チームでの使い分けも解説

  8. スプレッドシートで自分だけフィルタをかける方法!スマホでの注意点も解説

  9. Googleスプレッドシートの SUMIF・COUNTIF関数の使い方(条件範囲の指定ミスも解説)