- 作成日 : 2025年8月25日
ExcelのDAY関数の使い方!日付から「日」だけを取り出す方法と活用術
Excelで日付データを扱っているとき、「日付の中から『日』だけを取り出したい」と感じたことはありませんか?例えば、誕生日の日付データから「生まれた日」だけを抽出したい場合や、特定の日付のデータを基に集計を行いたい場合などに便利です。
このような場合に役立つのが、ExcelのDAY関数です。DAY関数は、日付データから「日」の部分だけを簡単に抽出できる非常に便利な関数です。この記事では、DAY関数の基本的な使い方から、具体的な利用シーン、さらに応用例、そしてよくあるエラーとその対策まで、初心者の方にも分かりやすく解説します。
目次
DAY関数とは?
DAY関数は、日付シリアル値から「日」を表す整数(1から31)を返す関数です。
書式
=DAY(シリアル値)
シリアル値:
日付を表す数値、または日付が入力されたセルを指定します。Excelでは、日付は1900年1月1日を「1」として、そこからの経過日数で管理されています。これを「シリアル値」と呼びます。
DAY関数の使い方
具体的な使い方を見ていきましょう。
例えば、セルA1に「2025/6/25」と入力されているとします。この日付から「日」だけを取り出すには、次のようにDAY関数を使用します。
=DAY(A1)
この数式を入力すると、「25」という結果が返されます。
直接日付を数式に入力することも可能です。その場合は、日付をダブルクォーテーション(”)で囲む必要があります。
=DAY(“2025/6/25”)
この場合も、「25」という結果が返されます。
DAY関数の利用シーン
DAY関数は、単独で使うだけでなく、他の関数と組み合わせることで様々な場面で活用できます。
1. 特定の日のデータを抽出・集計する
例えば、売上データに日付列があり、毎月「5日」の売上だけを集計したい場合などに活用できます。
| 日付 | 売上高 |
|---|---|
| 2025/1/5 | 10,000 |
| 2025/1/10 | 15,000 |
| 2025/2/5 | 12,000 |
| 2025/2/15 | 8,000 |
上記のようなデータがあった場合、DAY関数とIF関数、またはSUMPRODUCT関数などを組み合わせて5日の売上だけを抽出・集計できます。
例:SUMPRODUCT関数と組み合わせる場合
=SUMPRODUCT((DAY(A2:A5)=5)*(B2:B5))
この数式は、A2からA5の範囲の日付から「日」が「5」である行の売上高(B列)を合計します。
2. 生年月日データから生まれた日だけを抽出する
顧客の生年月日データから「日」だけを抽出し、誕生日が近い顧客を特定したり、日ごとの傾向を分析したりするのに役立ちます。
| 氏名 | 生年月日 |
|---|---|
| 田中 | 1990/3/15 |
| 佐藤 | 1985/7/20 |
| 鈴木 | 1992/10/5 |
B列の生年月日データから生まれた日だけをC列に表示したい場合、C2セルに以下の数式を入力し、下方向にオートフィルします。
=DAY(B2)
| 氏名 | 生年月日 | 生まれた日 |
|---|---|---|
| 田中 | 1990/3/15 | 15 |
| 佐藤 | 1985/7/20 | 20 |
| 鈴木 | 1992/10/5 | 5 |
3. スケジュール管理やタスクの割り当て
特定の日に繰り返し発生するタスクの管理に利用できます。例えば、「毎月10日に請求書を発行する」といったタスクがある場合、日付から「日」を抽出し、それが10日かどうかで判断するのに使えます。
DAY関数の応用
DAY関数は、他の日付・時刻関数や論理関数と組み合わせることで、さらに高度な処理が可能です。
1. TODAY関数と組み合わせて今日の日を取得する
TODAY関数は、現在の日付を返す関数です。これとDAY関数を組み合わせることで、今日の「日」を簡単に取得できます。
=DAY(TODAY())
例えば今日が2025年6月25日であれば、「25」という結果が返されます。
2. WEEKDAY関数やMONTH関数と組み合わせて詳細な日付分析を行う
DAY関数で「日」を抽出し、さらにWEEKDAY関数(曜日を返す)やMONTH関数(月を返す)と組み合わせることで、より詳細な日付分析が可能です。
WEEKDAY関数とDAY関数の組み合わせ例:
「〇月〇日の曜日を判断し、それが週末(土日)であれば特定の処理を行う」といった場合に使用できます。
=IF(OR(WEEKDAY(A1)=1,WEEKDAY(A1)=7),”週末です”,”平日です”)
これはA1セルの日付が週末かどうかを判断する例ですが、DAY関数で日を抽出しつつ曜日も考慮するといった複雑な条件設定に役立ちます。
3. TEXT関数で書式設定された日付から日を抽出する
TEXT関数で日付の表示形式を変更している場合でも、DAY関数は正しく「日」を抽出します。
例えば、A1セルに「2025/6/25」と入力されており、B1セルに=TEXT(A1,”yyyy年m月d日”)と入力して「2025年6月25日」と表示されているとします。このB1セルから「日」を抽出する場合でも、
=DAY(A1)
と入力すれば「25」が返されます。直接B1セルを参照するとエラーになる可能性があるので、元のシリアル値が入っているセルを参照するのが確実です。
DAY関数のよくあるエラーと対策
DAY関数を使用する際に遭遇しやすいエラーと、その対策について解説します。
1. #VALUE! エラー
このエラーは、DAY関数に無効な値が指定された場合に発生します。主に以下のケースが考えられます。
日付ではない文字列が入力されている
「今日」や「来週」など、Excelが日付として認識できない文字列が指定されている場合。
対策:DAY関数に渡す値が有効な日付形式であることを確認してください。日付は「2025/6/25」のような形式や、「2025-6-25」のような形式で入力します。
日付として認識されない数値が入力されている
Excelの日付シリアル値の範囲外の数値(例えば負の数)が入力されている場合。
対策:負の数など範囲外の数値が指定された場合は #NUM! エラーになります。
対策:Excel が認識できる日付シリアル値(1900年1月1日以降を表す 正の数。小数部は時刻として許容)または DATE 関数などで作成した有効な日付を指定してください。
空白セルを参照している
完全に空のセル(未入力)を参照すると DAY は 0 を返します。一方、そのセルに数式で空文字(””)が入っている場合は #VALUE! になることがあります。
対策:元データが空文字になっていないか確認し、必要に応じて =IF(A1=””,””,DAY(A1)) のように空を返す条件分岐を入れてください。
2. 表示形式の問題
DAY関数自体がエラーを返すわけではありませんが、DAY関数で抽出した結果が日付形式で表示されてしまうことがあります。
例えば、DAY関数の結果が「1900/1/25」のように表示される場合、それはセルの表示形式が「日付」になっているためです。
対策:DAY関数の結果を表示するセルの書式設定を「標準」または「数値」に変更してください。
- 結果が表示されているセルを選択します。
- 右クリックして「セルの書式設定」を選択します。
- 「表示形式」タブで「標準」または「数値」を選択し、「OK」をクリックします。
※ 掲載している情報は記事更新時点のものです。
※本サイトは、法律的またはその他のアドバイスの提供を目的としたものではありません。当社は本サイトの記載内容(テンプレートを含む)の正確性、妥当性の確保に努めておりますが、ご利用にあたっては、個別の事情を適宜専門家にご相談いただくなど、ご自身の判断でご利用ください。
関連記事
SWITCH関数とは?複数条件の設定やIF関数との違いを解説
エクセルでの複雑な条件分岐をすっきりと書けるSWITCH関数(読み方:スイッチ関数)は、IF関数を何重にもネストしていた従来の数式をシンプルに置き換えるのに最適です。この記事では、SWITCH関数の基本から応用までをわかりやすく解説。TRU…
詳しくみるNETWORKDAYS関数の使い方:エクセルで営業日数を正確に計算する
プロジェクトの期間計算や、納期管理、残業時間の計算など、エクセルで日付を扱う業務は多岐にわたります。その中でも、「土日を除いた営業日数(稼働日数)を正確に知りたい」というニーズは非常に多いのではないでしょうか? 祝日も考慮に入れるとなると、…
詳しくみるエクセルで二乗を計算・表示する方法をわかりやすく解説
エクセルは数値計算を簡単に行える強力なツールです。本記事では、エクセルを使って数値の二乗を計算し、表示する方法について詳しく解説します。基本的な計算方法から、関数を活用した効率的な手法まで、段階を追って説明しますので、初心者の方でもスムーズ…
詳しくみるREPLACE関数とは?文字列置換の基本から応用、エラー対策まで解説
REPLACE関数(読み方:リプレイス関数)は、エクセルで文字列の一部を別の文字に置き換える関数です。 大量のデータを扱う中で「特定の文字だけを差し替えたい」といった場面に最適で、作業を一気に効率化できます。 この記事では、REPLACE関…
詳しくみるエクセルで平均を出す方法の基本と応用
エクセルを使用することで、数値データの平均を簡単に求めることができます。基本的な平均の算出方法から、離れたセルや異なるシートを参照した平均値の計算、更にはゼロを除外して平均を求めるテクニックまで、幅広く解説していきます。それぞれの手法を理解…
詳しくみるISNUMBER関数の使い方や利用シーンをわかりやすく解説
ISNUMBER関数は、 ExcelやGoogleスプレッドシートにおいて、特定のセルの内容が数値であるかどうかを判定するための非常に便利な関数です。この関数を使用することで、数値データの入力ミスを防ぐことができ、データ分析や計算の精度を高…
詳しくみる