エクセルで31日がない月の31日を自動で非表示にする方法

エクセルでカレンダーを作ると、2月など「存在しない日付」をどう処理するか悩みますよね。
今回は、31日がない月だけ自動で空白にするやさしい方法を紹介します。

エクセルで31日がない月を自動で非表示にする方法をわかりやすく解説します

エクセルでスケジュールやカレンダーを作成するとき、「31日までない月」の処理が難しいと感じるユーザーさんは多いです。
とくに2月や4月など、存在しない日付が表示されると混乱しますよね。

この方法では、エクセルの関数(DATE・DAY・MONTH)を使って「本当に存在する日付かどうか」を自動的に判定します。
存在する日にちだけが表示され、存在しない日は空白になります。
書式や曜日の設定とも相性がよく、あとから表示形式を変えても問題ありません。

初心者さんでも安心して使える手順なので、ぜひ試してみてください。

方法の具体的な手順|A1・A2の設定からA3の数式、コピーまでやさしく紹介します

ここからは、短い文章と箇条書きで操作方法をまとめます。
エクセルが苦手な方でも迷わず進められます。

A1・A2 に年と月を入力します

  1. A1:年(例:2024)を入力
  2. A2:月(例:2)を入力
  3. この2つを数式が参照します
  4. 月を変更すると、翌月以降も自動的に変わります

A3 に“存在する日だけ表示する数式”を入力します

A3 に次の数式を入れてください。

=IF(DAY(DATE($A$1,$A$2,ROW(A1)))=ROW(A1),ROW(A1),"")

数式のポイントを短くまとめます。

  • DATE関数:年・月・日にちを作成
  • DAY関数:本当に存在する日にちか判定
  • ROW:行番号をそのまま「日にち」として利用
  • 存在する日にちは数字を表示
  • 存在しない日は空白
  • 2月・4月・6月などの月末も自動判定
  • 設定すれば曜日(WEEKDAY)や祝日の取得にも応用できます

A3 の数式を下にコピーします

  • A3 を選択してフィル(オートフィル)で下方向にコピー
  • A33 くらいまでコピーすると安心
  • 自動で 1〜31 日を判定
  • 存在しない日付は空白になります
  • 余計な31日の表示がなくなりスッキリします

表示形式や書式を整えます

  • セル範囲を選択
  • ホームタブ → 表示形式 をクリック
  • 数値/aaa(曜日)など種類を選択
  • フォントや色の変更もOK
  • 印刷にも適した表示になります

TEXT関数で「2024/2/1(木)」のような表示を作ることもできます。

A1・A2 を変更すれば、翌月のカレンダーも自動更新

  • A1 の年を変更
  • A2 の月を変更
  • この2つだけで、翌月のカレンダーが自動的に作成されます
  • 毎月の処理が一気に楽になります

まとめ|今日から使える存在しない日付を自動で非表示にする設定

今回の方法を使うと、存在しない日付を毎月手作業で消す必要はありません。
Excel が自動で判定して空白にしてくれるので、月末処理がとても便利になります。

今日のまとめ

  • A1 に年、A2 に月を入力
  • A3 に DAY・DATE を使った数式を設定
  • 下までコピーすれば完成
  • 存在しない日は自動で非表示
  • 書式や曜日の追加も自由にできます

エクセルが苦手な方でも、安心して使える設定です。
毎月のスケジュール作成がぐっと楽になりますよ。

Follow me!