Q:DATE関数でうるう年を特定しました。一目で分かるように○を付けたいのですが、どうすればよいのでしょうか?
A:日付のシリアル値からDAY関数で「日」を取り出し、「29」と等しければうるう年として「○」を付けます。
前回はDATE関数を使ってどの年に2月29日があるのかを調べました。そして、2月29日がある年をうるう年として特定しました。
しかしながら、どの年に2月29日があるのか、日付をいちいちチェックしなければなりません。質問にあるように「○」が付いていれば、この年がうるう年だと一目で分かるでしょう。
やり方はそれほど難しくありません。DATE関数を用いて作成した日付のシリアル値から、DAY関数を用いて「日」を取り出します。取り出したその日付が「29」と等しければ、うるう年として「○」を付ければよいわけです。
等しいか否かの検証にはIF関数を使います。実際にやってみましょう。
値または数式が条件を満たしているかどうかを判定する。
論理式 真または偽のどちらかに評価できる値または式を指定する。
真の場合 論理式が真の場合に返す値を指定する。
偽の場合 論理式が偽の場合に返す値を指定する。
指定したシリアル値から「日」の値を取り出す。
シリアル値 日付を指定する。
まず、B2に「=DATE(A2,2,29)」と入力し、これをオートフィルして、その年に「2月29日」があるかどうか調べました。C2:C8には、「2月29日」があれば「○」を付けるようにします。
IF関数の「引数」ダイアログが開いたら、「論理式」に「DAY(B2)=29」、「値が真の場合」に「"○"」、「値が偽の場合」に「""」を入力します。
「OK」ボタンを押したあと、C2をC8までオートフィルしましょう。
DAY関数は日付のシリアル値から「日」の値を取り出す関数です。この取り出した「日」が「29」と等しければうるう年であり、「値が真の場合」の「○」が返ります。「29」でない場合は、「値が偽の場合」で空白セルになります。
なお、いまの例では中間セルとしてB列に「日付」を表示しました。次の方法をとると、この中間セルなしで「○」を表示できます。
すべて入力できたら「OK」ボタンを押します。数式をB8までオートフィルすれば、うるう年を「○」で示したシンプルな表の出来上がりです。