0Pricing
Excel Formulas Academy · レッスン

DATEとEDATEで日付を作成する

スケジュールに合わせて日付を組み立て、月単位で移動します。

「DATEとEDATEで日付を作成する」はCoddyKit上の無料Excel Formulas Academyレッスンです。 これはレッスン3/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはExcel Formulas Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Excel Formulas Academyコースには全4レッスンが含まれています。

逆方向に進む

前のレッスンでは、日付を分解しました。ここでは、分解された要素から日付を組み立てます。年、月、日が別々の数値としてあり、それらを1つの正しい日付にまとめたい場合があります。

DATE関数は、その処理を正確に行います。また、日付を月単位で前後に移動したい場合は、EDATEが月の日数の違いを考慮して処理してくれます。

これらは、スケジュール管理や期限日の設定、インポートした要素からの日付作成に欠かせない関数です。

DATE関数の構文

DATE関数は、年、月、日の3つの引数を決まった順序で受け取ります。

そのため、=DATE(2026, 6, 18)は2026年6月18日を表す正しい日付の値を作成します。スプレッドシートでは、その値が設定されている日付形式で表示されます。

これは、データが分割された状態で届く場合に重要です。A2に年、B2に月、C2に日が入っていれば、それらを1つの日付に組み立てられます。

=DATE(2026,6,18)

別々のセルから組み立てる

DATEの本当の価値は、各要素が別々のセルに入っている場合に発揮されます。A2に年、B2に月、C2に日が入っているとします。

この数式で要素を1つの正しい日付にまとめると、その日付を並べ替えたり、差を計算したり、書式設定したりできます。日付が列ごとに分かれたデータをインポートした後などによく使われます。

=DATE(A2,B2,C2)

DATEは範囲外の値を自動調整する

DATEには便利な特徴があります。範囲外の値を正規化してくれるのです。月に13を指定すると翌年に繰り上がり、日に0を指定すると前月の最終日が返されます。

たとえば、=DATE(2026, 1, 0)は2025年12月31日を返します。また、=DATE(2026, 13, 1)は2027年1月1日を返します。

この仕組みを意図的に使うと、月の最終日を計算できます。詳しくはすぐ後で説明します。

=DATE(2026,1,0)

月末日を求める

この繰り上がりの仕組みを使うと、便利なパターンが得られます。月の最終日を取得するには、翌月の0日を指定します。

A2に任意の日付が入っている場合、=DATE(YEAR(A2), MONTH(A2)+1, 0)はA2と同じ月の最終日を返します。28日、29日、30日、31日のどの月にも正しく対応できます。

同じ処理をより直接的に行う専用関数EOMONTHもあります。次にこの関数を学びます。

=DATE(YEAR(A2),MONTH(A2)+1,0)

EDATE関数

EDATE関数は、日付を月単位で移動させます。開始日と移動する月数という2つの引数を受け取ります。

正の数を指定すると先の日付に、負の数を指定すると前の日付になります。そのため、=EDATE(A2, 3)はA2の3か月後の日付を返し、=EDATE(A2, -1)は1か月前の日付を返します。

可能な場合は同じ月の日を維持するため、月次請求にぴったりです。

=EDATE(A2,3)

30日を足すだけではいけない理由

30を足せば1か月進められると思うかもしれませんが、月によって日数は異なります。1月31日に30日を足すと、2月ではなく3月初旬になります。

EDATEは実際の暦における月を理解しています。1月31日に対して=EDATE(A2, 1)を使うと、2月には31日がないため、2月28日(うるう年は29日)が返されます。

そのため、月単位のスケジュールにはEDATEが適しています。

=EDATE(A2,1)

月末にはEOMONTH

EDATEと組み合わせて使う関数がEOMONTHです。指定した月数だけ離れた月の月末日を返します。

=EOMONTH(A2, 0)はA2と同じ月の最終日を返します。=EOMONTH(A2, 1)は翌月の最終日を返します。

請求書の締め日や月次レポートの集計締め日を求めるには、これが最も簡単な方法です。

=EOMONTH(A2,0)

実践例:サブスクリプションの更新日

顧客がA2の日付に12か月プランを契約したとします。更新日を求めたいとします。

EDATEを使えば、暦上の月を正しく考慮しながら、ちょうど1年先に進められます。うるう年の2月29日に契約した場合も、EDATEは翌年の2月28日へ適切に調整します。

この1つの数式で、手作業の日付計算では間違えやすいあらゆるケースに対応できます。

=EDATE(A2,12)

応用例:翌月の初日

EOMONTHと単純な加算を組み合わせると、もう1つの典型的な処理ができます。それは翌月の初日を求めることです。

EOMONTHで当月の最終日を求め、そこに1日を加えると、翌月の初日になります。

そのため、=EOMONTH(A2, 0)+1は、当月の日数に関係なく常に翌月の初日を返します。このような関数を使えば、スケジュール用の数式を堅牢に作成できます。

=EOMONTH(A2,0)+1

月初日の連続データを作成する

EDATEと開始日を組み合わせると、スケジュール全体を作成できます。A2に開始日を入力し、次のセルで1か月後、その次のセルでさらに1か月後というように続けます。

たとえば、=EDATE($A$2, 1)、=EDATE($A$2, 2)、=EDATE($A$2, 3)とすると、連続する月における同じ日付が一覧表示されます。$記号で開始セルを固定しているため、数式を下方向にコピーできます。

これで、1つの基準日から月次請求日や支払日をきれいに作成できます。

=EDATE($A$2,2)

確認テスト

日付を作成するスキルを確認しましょう。

まとめ:日付を作成する

日付を組み立てたり、移動させたりする方法を学びました。

  • DATE(year, month, day)は3つの数値から正しい日付を作成し、範囲外の値も自動調整します。
  • DATE(YEAR(d), MONTH(d)+1, 0)は、0日を指定する方法で月の最終日を求めます。
  • EDATE(date, months)は暦上の月単位で日付を移動し、月ごとの日数の違いにも正しく対応します。
  • EOMONTH(date, months)は月末日を返し、1を加えると翌月の初日になります。

次は、2つの日付の間隔を計算する方法を学びます。

よくある質問

「DATEとEDATEで日付を作成する」レッスンは無料ですか?

はい。「DATEとEDATEで日付を作成する」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Excel Formulas Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Excel Formulas Academyコースには全4レッスンが含まれています。

「DATEとEDATEで日付を作成する」で何を学びますか?

スケジュールに合わせて日付を組み立て、月単位で移動します。 ブラウザで直接実行するハンズオンコードでExcel Formulas Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Excel Formulas Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのExcel Formulas Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/4です。

「DATEとEDATEで日付を作成する」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このExcel Formulas Academyレッスンでコードを書いて実行できますか?

はい。すべてのExcel Formulas Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. TODAYとNOWで最新の日付を扱う
  2. YEAR、MONTH、DAYで日付を分解する
  3. DATEとEDATEで日付を作成する
  4. 日付間の日数を数える
← Excel Formulas Academyに戻る