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

「検査対象セルが祝日ならば○、そうでないならば×を表示させる」といった処理を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

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

A B
1 日付 祝日
2 2016/9/18 ×
3 2016/9/19
4 2016/9/20 ×
5 2016/9/21 ×
6 2016/9/22
7 2016/9/23 ×
8 2016/9/24 ×
9 2016/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.