
日付データから日にちだけ欲しい!でもやり方わからない…

日にちだけ抜き出せればあの作業が楽になるのに…手入力めんどくさ
この悩み、実は超簡単に解決できます!
DAY関数を使えば、日付から「日」の部分だけを一瞬で抽出できることをご存知ですか?
この記事では、請求書作成やスケジュール管理に欠かせないDAY関数の使い方を完全解説します。
エクセル初心者の方でも、コピペですぐに使える実践例も多数ご紹介していますよ!
- 日付から「日」だけを簡単に取り出す方法がマスターできる
- 月末判定や締め日管理が自動化できるようになる
- 条件付き書式と組み合わせて特定日を自動で色付けできる
- #VALUE!エラーなど、よくあるトラブルの解決法がわかる
- 他の日付関数と組み合わせた高度な使い方も学べる
日付データを自在に操る技を身につけて、エクセル作業を今すぐ効率化しましょう!

日付データ操作が劇的に楽になる!DAY関数ガイド

「どういう関数なの?」DAY関数の基本と便利ポイント
エクセルで日付から「日」の部分だけを取り出したいときに活躍するのがDAY関数。
この関数を使えば、「2025/3/15」という日付から「15」という数値だけを簡単に抽出できます!
日付の計算や条件分岐など、様々な場面で重宝する機能ですよ。
「これは捗る!」DAY関数の実践活用シーン
DAY関数は想像以上に様々なシーンで活躍します。
例えば、
- 請求書や支払いの締め日管理
- 売上データや顧客データの日付ごとの分析
- カレンダーやスケジュール作成時の日付表示調整
特に便利なのが月末締めの請求書作成ですね。締め日以降の取引を「次月扱い」にする条件分岐が簡単に設定できます。
また、毎月5日と20日などの特定日に設定されたイベントの確認や、誕生日リストから同じ日に生まれた人の抽出なども、DAY関数を使えばあっという間にできちゃいますよ。
具体的な実例をいくつかご紹介しますね!
月末締めの請求書で締め日管理
=IF(DAY(A2)>25,"次月計上","当月計上")
特定日のイベント確認
=IF(OR(DAY(A2)=5, DAY(A2)=20), "イベント日です", "通常営業日")
同じ日に生まれた人を抽出する条件付き書式
=DAY(誕生日列)=DAY(TODAY())
下の画像が、紹介している関数を使用した結果です。
条件付き書式の「誕生日列」は、ここではE2を指定しました。記事作成日が3/16なので、誕生日列の同日が黄色く着色されています!

ちなみに、赤文字は見やすいようにしてあるだけで、関数を使用しただけでは赤くならないのでご注意を。
迷わず使える!DAY関数の書き方と基本テクニック

「=DAY(何を入れる?)」構文の仕組みと正しい引数の使い方
DAY関数の基本構文はとてもシンプルです。
=DAY(シリアル値)
「シリアル値」の部分には以下のいずれかを指定しましょう。
- 日付を含むセル参照 例:=DAY(A1)
- 直接入力した日付 例:=DAY(“2025/3/15”)
- 日付を返す他の関数 例:=DAY(TODAY())
この引数は必須で、省略することはできません。
エクセルで認識される日付形式であれば、表示形式に関わらず正しく「日」を抽出できます。そして、1~31の整数を返します。
「こうすればいいのか!」日付から日だけを取り出す手順
DAY関数の基本的な使い方は次の通りですね。
- ①セルに日付が入力されている場合SQL
=DAY(A1)
と入力すると、A1の日付から「日」が抽出されます。
- ②直接日付を指定する場合SQL
=DAY("2025/3/16")
と入力すると「16」が返されます。
- ③TODAY関数と組み合わせる場合SQL
=DAY(TODAY())
で、今日の日付から「日」の部分を抽出できます。
これは「2025年3月16日」のように表示形式が異なる場合でも、正しく日付として認識されていれば問題なく返してくれるので覚えておきましょう!
業務効率アップ!DAY関数で作業時間を大幅短縮するテクニック

月末判定や給料日計算も簡単!応用できるDAY関数の使い方
DAY関数の応用テクニックがホントに便利なので、いくつか紹介しますね!
月の前半/後半で条件分岐
=IF(DAY(A1)<=15,"前半","後半")
↓わかりやすいように赤文字にしているだけです。関数使用だけでは赤くならないので注意。(以降も同じ感じで進めます)

月末日を判定
=IF(A1=EOMONTH(A1,0),"月末です","月末ではありません")

月の進捗をパーセンテージで表示
=DAY(TODAY())/DAY(EOMONTH(TODAY(),0))

これは「今日が今月の中で何パーセントにあたるのか」を計算できる数式です。

この記事作成日が3/16なので、3/1~3/31の中での51.6%が経過したという意味ですね!
パーセント表示にならない場合は、「ホーム」タブ →「数値」→「%」を選択しましょう!
特定の日付(給料日など)までの残り日数の計算
=MOD(25-DAY(TODAY()),DAY(EOMONTH(TODAY(),0)))

この数式は「25日が給料日の場合、現在日から給料日までの日数」が何日なのかを計算しています。
記事作成日が3/16なので、3/25まであと「9」日あるということですね!
上旬・中旬・下旬での分類
=CHOOSE(MIN(CEILING(DAY(A1)/10,1),3),"上旬","中旬","下旬")

条件付き書式との組み合わせで特定日を強調表示

毎月決まった日にイベントあるけど、忘れないように自動で強調できたりしないかな…
こういう時は、条件付き書式を使いましょう!
もし「毎月15日」を強調したいのであれば、
=DAY(A1)=15
この数式を条件付き書式で設定すればOKです!

コレ、数式としては参照セルがA1になっていますが、適用範囲は「データが入っている範囲」になっているので注意してくださいね!
また、数式を
=A1=EOMONTH(A1,0)
に変更することで、月末日を自動的に強調することもできますよ!
日付範囲による条件付き書式の設定
=AND(DAY(A1)>=10,DAY(A1)<=20)

この数式で条件付き書式を設定することで、「月の10日から20日までの日付をハイライト表示」することができます。
「もっと使いこなしたい!」他の関数との組み合わせ
先ほどは用途ごとに紹介しましたが、次は他の関数との併用ベースで紹介します!
DATE関数との組み合わせ
=DATE(YEAR(A1),MONTH(A1),DAY(A1)+7)

この数式では、A1の日付の1週間後を作成することができます。
MONTH/YEAR関数との連携
=DATE(YEAR(A1),MONTH(A1),1)

これは、月初日を取得するためのものですね。
IF関数との組み合わせ
=IF(DAY(A1)>20,"月末処理を開始してください","まだ月末処理の時期ではありません")

この数式では、20日を過ぎたら月末処理の通知を表示するようになっています。うっかり防止に役立ちますよ!
TEXT関数との連携
=TEXT(DAY(A1),"0#")&"日"

これは「01日」のように先頭にゼロを付けた日付表示をしたい時に使います。「&”日”」を消せば「01」だけにすることもできますよ。
WEEKDAY関数との組み合わせ
=IF(AND(WEEKDAY(A1,2)=1,DAY(A1)>7,DAY(A1)<=14),"第2月曜日です","第2月曜日ではありません")

この数式を使うと、第2月曜日(月曜日かつ8~14日の間)かどうかを判定することができます。
SUM/AVERAGE関数との連携
=SUMIFS(B2:B32,A2:A32,">="&DATE(YEAR(TODAY()),MONTH(TODAY()),1),A2:A32,"<="&DATE(YEAR(TODAY()),MONTH(TODAY()),DAY(TODAY())))

これは「月初から今日までの売上合計を計算」するための数式です。
「A2:A32」「B2:B32」が指定している範囲なので、自分のデータにあわせて調整しましょう!
INDEX/MATCH関数と組み合わせて日付をキーにデータを検索
=INDEX(B2:B32,MATCH(DAY(TODAY()),DAY(A2:A32),0))

この数式では、日付一覧から今日を検索し、該当する人物名を表示しています。記事作成日である3/16日はストーム森田氏が担当者ということですね。
日付のグループ化や分類によるデータ分析
例えば、月の中を
「1~10日」→ 上旬
「11~20日」→ 中旬
「21~最終日」→ 下旬
という期間で分類して、売上合計を計算したいとします。

まず、期間分類するための数式が以下↓
=CHOOSE(MIN(CEILING(DAY(A2)/10,1),3),"上旬","中旬","下旬")
そして、期間ごとの合計を計算するための数式が以下の3つです。
【上旬】↓
=SUMIFS(B2:B32, C2:C32, "上旬", A2:A32, ">=2025/3/1", A2:A32, "<=2025/3/31")
【中旬】↓
=SUMIFS(B2:B32, C2:C32, "中旬", A2:A32, ">=2025/3/1", A2:A32, "<=2025/3/31")
【下旬】↓
=SUMIFS(B2:B32, C2:C32, "下旬", A2:A32, ">=2025/3/1", A2:A32, "<=2025/3/31")
画像では、それぞれE2~G2セルに入っていますね。

今回紹介した合計額算出の数式は、大量のデータの中から目的の期間をピンポイントで計算できるように、年と月を指定できる内容にしてあります。
「データ量が当月の分だけ」みたいな少量のデータであれば、
=SUMIF(C2:C32, "上旬", B2:B32)
という短い数式でも機能しますよ!
トラブル解決!DAY関数のエラー対処法

DAY関数で発生する「#VALUE!」「#NUM!」エラー
「#VALUE!」エラーは、日付として認識できない値を引数に指定した場合に発生します(文字列や非数値など)。
そして「#NUM!」エラーは、シリアル値の範囲外を指定した時や、連続した数値形式として指定した時に発生します。
対応可能な日付形式 | 結果 | 概要 | 日付セル入力値 |
---|---|---|---|
2025/3/16 | 16 | 通常の日付 (YYYY/MM/DD) | |
2025-3-16 | 16 | ハイフン区切り (YYYY-MM-DD) | |
45732 | 16 | シリアル値 (2025/3/17のシリアル値) | |
2025/3/16 | 16 | 今日の日付を取得 | =TODAY() |
2025/3/16 | 16 | DATE関数で作成した日付 | =DATE(2025,3,16) |
エラーになる日付形式 | 結果 | 概要 |
---|---|---|
“2025/3/16” | #VALUE! | クォート付きのテキスト |
TRUE や FALSE | #VALUE! | 論理値 |
abc | #VALUE! | 文字列 |
9999999999 | #NUM! | シリアル値の範囲外 |
20250316 | #NUM! | 連続した数値形式 |


外部データからのコピペの場合、この表で対応可能となっている形式でも正常に認識されない場合があるため注意してください!
まとめ

どうでしたか?
DAY関数が、締め日管理や条件分岐などの業務を劇的に効率化することをご理解いただけたかと思います。
- DAY関数の基本構文と正しい引数の使い方
- 請求書作成や給料日管理など、実践的な活用シーン
- 月末判定や特定日の色付けなど、他関数との組み合わせテクニック
- 条件付き書式との連携でビジュアル効果を高める方法
- #VALUE!エラーなど、よくあるトラブルの解決法
DAY関数をマスターすれば、これまで手間がかかっていた日付データの処理が一瞬で完了します。
締め日管理や給料日計算も自動化でき、作業時間の短縮とミス防止を同時に実現できるでしょう。
この記事で紹介した技を活用すれば、定時退社という目標も達成しやすくなりますよ!ぜひ試してみてください!

最後までお読みいただき、ありがとうございました!

