ある年が閏年かどうかを判定する方法をご存じだろうか。閏年になるのは、西暦の年が4で割り切れる年。ただし、その年が100で割り切れて、かつ、400で割り切れない場合は閏年ではない。この判定式をワークシート関数で作成するのは、あまり楽しい作業ではないだろう。

 実は、Excelを使うともっと簡単に閏年かどうかを判定することができる。まず、閏年とは何かを考えてみよう。言うまでもなく2月が29日まである年のことだ。この29日は、2月の月末日であることに注目する。2月末日の翌日は3月1日である。これは、その年が閏年であっても、平年であっても変わらない。ということは、3月1日の前日が29日かどうかを調べれば、その年が閏年かどうか判定できることになる。

 ここでは、A列に閏年かどうかを調べる年度が入力されている例で解説する。まず、指定した年の「3月1日」を作る。これにはDATE関数を使う。書式は「DATE(年,月,日)」だ。年を表す数値がセルA2に入力されていた場合、その年の3月1日は「DATE(A2,3,1)」となる。そこから1を引いた日が2月の末日となる。

図1 DATE関数は年月日を指定して日付データを作る関数。3月1日から1を引けば前日である2月末日となる
図1 DATE関数は年月日を指定して日付データを作る関数。3月1日から1を引けば前日である2月末日となる

図2 セルB2をセルB7までコピーすると、各年の2月末日が表示される
図2 セルB2をセルB7までコピーすると、各年の2月末日が表示される

 2月末日が何日になるかはDAY関数で調べる。DAY関数は日付のうち日を表す数値を返す関数だ。もしDAY関数の結果が29だったら、その年は閏年とわかる。

図3 DAY関数の結果が29かどうかを判定する数式をセルC2に入力する
図3 DAY関数の結果が29かどうかを判定する数式をセルC2に入力する

図4 セルC2をセルC7までコピーする
図4 セルC2をセルC7までコピーする

図5 閏年かどうかが判定できた
図5 閏年かどうかが判定できた