DAY関数の使い方|日付から「日」だけを抽出する

Excel関数

Excel(エクセル)DAY関数の使い方|日付から「日」だけを抽出する

使用関数:DAY

DAY(デイ)関数とは?

DAY関数は日付から「日」に当たる数字だけを抽出します。IF関数と組み合わせて、DAY関数で取得した日の数値と合致するかを条件にした色々な計算に使えます。

日付から「年」に当たる数字を抽出するにはYEAR関数を使います。

YEAR関数の使い方|日付から「年」だけを抽出する
日付から「年」に当たる数字だけを抽出するYEAR関数の使い方を初心者にも分かりやすく解説しています。YEAR関数の引数の指定方法、和暦の「年」を表示させたい時の対処法、YEAR関数がうまくいかない、おかしい日付が返される場合の対処法など。

日付から「月」に当たる数字を抽出するにはMONTH関数を使います。

MONTH関数の使い方|日付から「月」だけを抽出する
日付から「月」に当たる数字だけを抽出するMONTH関数の使い方を初心者にも分かりやすく解説します。MONTH関数の引数の指定方法、常に「前月」「今月」「翌月」を自動表示させる方法、MONTH関数で1900年の日付が返される場合の対処法など。

DAY関数の引数と書式

「数式」タブ「関数ライブラリ」→「日付/時刻」→ DAYをクリックします。
「関数ライブラリ」→「日付/時刻」→ DAY
DAY関数の引数は「シリアル値」です。

シリアル値とは1900年1月1日を「1」として、1日1ずつ加算した数値で日付を表したものです。シリアル値を足し算・引き算することで期間を計算したり、1週間後、1ヶ月前、1年後の日付を簡単に取得することができます。シリアル値は「表示形式」によって日付のスタイルで表示されます。「2022/1/19」「令和4年1月19日」「19-Jan」は全て同じシリアル値「44580」です。表示が違っても、並べ替えや計算にはこの数字が使われます。

DAY関数の書式の構成はこうなります。
DAY関数の書式の構成

DAY関数で「日」を取り出す

DAY関数の引数「シリアル値」に日付を指定します。ここでは誕生した日の数値を取り出すために生年月日のセルをクリックします。
DAY関数の引数「シリアル値」に生年月日のセルをクリックで指定
他の行までDAY関数の数式をオートフィルコピーします。
DAY関数で日が取得できた
「シリアル値」にはセル参照の他、直接シリアル値そのものを数値で指定したり、日付を表す文字列を「” “」で囲って指定することもできます。
DAY関数の引数「シリアル値」にシリアル値や日付文字列を直接入力

DAY関数とTODAY関数で今日が予約日かを判定する

その日のスケジュールを確認するのに、DAY関数とTODAY関数を組み合わせて今日が予約した日付かを判定できる仕組みを作っておきます。

TODAY()=予約日のセル番地」という数式をDAY関数に入れ子します。下図の例では「=DAY(TODAY()=B3)」となります。
DAY関数にTODAY関数を入れ子して今日が予約した日付かを判定
この数式で返るのは論理値1(TRUE)」と「0(FALSE)」のどちらかです。比較演算子を使った基本的な論理式で、IF関数のように「~だったらTRUE、~でなければFALSE」となります。「1」が返れば本日が予約した日付ということですね。
DAY関数+TODAY関数の結果

このままだと分かりづらいので「ホーム」→「条件付き書式」→「新しいルール」で「数式を使用して、書式設定するセルを決定」に上記の数式を入力してセルに目立つ色を設定しておきました。
条件付き書式でセルに色を設定
本日が予約した日付である場合はセルに色が付きます。
本日が予約した日付である場合はセルに色が付く

DAY関数とIF関数、DATE関数を組み合わせて閏年の判定

DAY関数と、IF関数、DATE関数を組み合わせて閏年(うるうどし)の判定をします。
DAY関数と、IF関数、DATE関数を組み合わせて閏年を判定する表

DATE関数で閏日の年月日を取り出し、DAY関数で日だけ抽出

まず、DATE関数で指定した年の閏日(2月29日)を取り出します。
DATE関数で指定した年の閏日(2月29日)を取得
このDATE関数の数式をDAY関数に入れ子すると日の数値が取得できますが、閏日のある年は「29」、閏日のない年は3月1日の「1」が返ります。この数式「=DAY(DATE(A2,2,29))」に等号で「=29」を付け足して、「この年の閏日が存在したら~」という論理式「=DAY(DATE(A2,2,29))=29」を組み立てます。
DATE関数の数式をDAY関数に入れ子してその年に閏日が存在するか判定
閏年かどうかの判定はこのままでもできていますが、一見して判るようにIF関数で表示を整えましょう。

IF関数の論理式にDAY関数を指定して閏年判定の体裁を整える

前章で組み立てた数式「DAY(DATE(A2,2,29))=29」=「この年の閏日が存在したら~」をIF関数の論理式に入力し、閏日が存在すれば★を表示「真の場合:”★”」、存在しなければ空白にする「偽の場合:””」とします。
IF関数の論理式にDAY関数を指定
閏年に★マークが付きました。
IF関数、DAY関数、DATE関数の組み合わせで閏年に★マークが付いた

DAY関数のまとめ
  • DAY関数は日付から「日」に当たる数字だけを抽出します
  • DAY関数の引数は「シリアル値」です。「シリアル値」にはセル参照の他、シリアル値そのもの、日付を表す文字列を指定できます
  • DAY関数とTODAY関数を組み合わせると、指定日と本日の日付が一致するか判定できます
  • DAY関数とIF関数、DATE関数と組み合わせると、閏年の判定が簡単にできます
タイトルとURLをコピーしました