スプレッドシートで月初から月末まで表示されている1列目のデータを、月末以降に翌月になったら非表示にする方法を、MONTH関数とIF関数を使って作成します。
月末以降に翌月になったら非表示にする方法
以下の手順で、月末以降に翌月になったら非表示にする条件付き書式を設定します。
- 条件付き書式を適用したい範囲を選択します。
- 「書式」→「条件付き書式」を選択します。
- 「カスタム数式」を選択し、以下の数式を入力します:
=MONTH(A1)<>MONTH(TODAY())
- 「書式設定」で「セルの色」を白に設定します。
この数式の説明:
A1
は1列目の各セルを指します。必要に応じて範囲を調整してください。MONTH(A1)
は1列目の日付から月を抽出します。MONTH(TODAY())
は現在の月を取得します。<>
は「等しくない」を意味します。
つまり、この数式は「セルの月が現在の月と異なる場合」を意味し、その条件に合致するセルを白色で表示(実質的に非表示)します。
注意点
- この方法では、セルを完全に非表示にするのではなく、背景色を白にして見えなくします。
- データそのものは残っているため、必要に応じて再表示できます。
- 月が変わると自動的に更新されるので、手動で操作する必要はありません。
応用
より詳細な条件分岐が必要な場合は、以下のようなIF関数を使用できます:
=IF(MONTH(A1)=MONTH(TODAY()), A1, "")
この数式をB列に入れると、A列の日付が現在の月と同じ場合のみ値を表示し、それ以外は空白になります。以上の方法で、月末以降に翌月になったら1列目のデータを非表示にすることができます。
実践例
A1セルに月初の日付が入っています。 A3セルには同じ日付が入ります。 M4セルから下に30セル翌日の日付が並んでいきます。
このときA1のセルが 2月であれば28日(また29日)まで。 3月であれば31日まで、4月であれば30日までといったように月末日を表示してそこから下は空白にしたいです。
その場合に、以下のように数式を組み立てます。
A3セルの数式:
=IF(MONTH(A1)=MONTH($A$1), A1, "")
A4セルの数式:
=IF(MONTH(A3+1)=MONTH($A$1),A3+1 , "")
月末まで表示された後の次のセルは自動的に非表示になります。
まとめ
以上の方法を使用することで、MONTH関数とIF関数を組み合わせて、特定の月以降のデータを非表示にすることができます。スプレッドシートの自動更新機能により、毎月自動的に更新されるので便利です。