対象のセルが祝日であるかどうか、を検査する論理式

「検査対象セルが祝日ならば○、そうでないならば×を表示させる」といった処理をIF関数で実現させるときの、論理式欄への設定内容をご紹介します。

事前に祝日リストを作成しておきます。また左の列には「国民の祝日月日」という名前を設定しておきます(範囲名)。

参考:「国民の祝日について – 内閣府

国民の祝日月日国民の祝日名称
2016/1/1元日
2016/1/11成人の日
2016/2/11建国記念の日
2016/3/20春分の日
2016/4/29昭和の日
2016/5/3憲法記念日
2016/5/4みどりの日
2016/5/5こどもの日
2016/7/18海の日
2016/8/11山の日
2016/9/19敬老の日
2016/9/22秋分の日
2016/10/10体育の日
2016/11/3文化の日
2016/11/23勤労感謝の日
2016/12/23天皇誕生日

あとは以下の式を作成すれば、「検査対象セル」が祝日の場合に「○」が表示されます。

=IF(COUNTIF(国民の祝日月日,検査対象セル)=1,"○","×")

つまり、「検査対象セル」が「国民の祝日月日」の範囲内に1つだけ存在しているかを検査する論理式は

COUNTIF(国民の祝日月日,検査対象セル)=1

となるわけです。具体例をみてみましょう。

AB
1日付祝日
22016/9/18×
32016/9/19
42016/9/20×
52016/9/21×
62016/9/22
72016/9/23×
82016/9/24×
92016/9/25×
10

B列には以下のいずれかの数式を入れています。なお「3.」についてはA列に「日付」という範囲名を設定しておくことで実現可能になります。

  1. =IF(COUNTIF(国民の祝日月日,A:A)=1,"○","×")
  2. =IF(COUNTIF(国民の祝日月日,RC[-1]),"○","×")
  3. =IF(COUNTIF(国民の祝日月日,日付)=1,"○","×")

また、セルB2に以下の式をコピーして、最後までコピーする方法もあります。このやり方が一般的でしょう。

  • =IF(COUNTIF(国民の祝日月日,A2)=1,"○","×")
スポンサーリンク
    スポンサーリンク

    コメントをどうぞ

    メールアドレスが公開されることはありません。

    認証コード * Time limit is exhausted. Please reload CAPTCHA.

    コメントは承認待ちです。表示されるまでしばらく時間がかかるかもしれません。