かんたんExcel!1行で連続の日付を入力する方法!月末も自動設定!

かんたんExcel!1行で連続の日付を入力する方法!月末も自動設定!
Excelで連続した日付をまとめて入力したいときはないでしょうか。

けど、そんな中で悩むことは、

・連続した日付を1つずつ手で入力するのが手間
・月末の日付を毎回カレンダーで調べている
・1ヶ月後や翌月末の日付をどう計算すればよいかわからない

ですよね。

今回はそんなお悩みを解決する

・1行の数式で連続した日付を入力する方法(+1・EOMONTH・EDATE関数)

についてまとめます!

完成イメージ

連続した日付や月末の日付は、手で入力していると抜けやズレが起きやすく、月をまたぐたびに調べ直す手間がかかります。
今回は
・開始日を1つ入れるだけで、連続日付・月末日・翌月末・1ヶ月後・曜日をまとめて自動表示する方法
をゴールにします。
数式を1行入れてフィルするだけで、日付の一覧が一気に作れるようになります。

なお、月末がズレるときの原因と対処法や、土日を除いた日付を出したいときのコツ、VBAで一括処理する方法もあわせてご紹介します。
早速実装して試してみましょう!
完成イメージ
上の画像が完成形です。開始日(A列)を入れるだけで、連続日付・月末日・翌月末・1ヶ月後・曜日が自動で表示されます。

STEP1. 日付を並べる表を用意する

まずは日付の一覧を作りたい表を用意します。
今回はA列に開始日を手入力し、そこから各列を自動計算する形にします。
1行目が見出しで、A2セル以降に開始日を入れていきます。
開始日は「2026/1/15」のようにスラッシュ区切りで入力すると、Excelが日付として認識します。
この時点ではB列〜F列は空のままにしておいてください。
この空いている列を、これから数式で埋めていきましょう。
開始日を入力した日付の一覧表

下の表をコピーして、Excelのシートに貼り付けるとそのまま試せます。

開始日 連続日付 月末日 翌月末 1ヶ月後 曜日
2026/1/15
2026/1/31
2026/2/28
2026/3/1
2026/3/31
2026/4/30
2026/5/15
2026/6/30

※ 数式で求める列は空にしています。すでに値が入っている列はそのまま残して試せます。

STEP2. 1行の数式で連続した日付を入力する

まずは連続した日付を作ります。
B2セルに =A2+1 と入力します。
日付は内部的に「数値」で管理されているので、+1すると1日後の日付になります。
次にB2セルを選び、右下の小さな四角(フィルハンドル)をB9セルまで下にドラッグします。
すると各行の開始日の翌日が一気に入り、連続した日付が完成します。
1行の数式を入れてフィルするだけなのでカンタンですね。

POINT

連続した日付は =A2+1 をフィルするだけ。
開始日を1つ変えれば、以降の日付もすべて自動で追従します。

=A2+1 で連続した日付を入力した表

数式はどのセルに入れる?

セルを選んで数式バーに入力するだけです。
実際の入力画面がこちらです。
B2セルに =A2+1 と入れてEnterを押すと、翌日の日付が表示されます。
=A2+1 の入力画面

STEP3. 月末を自動設定する(EOMONTH関数)

次は月末の日付を自動で出します。
C2セルに =EOMONTH(A2,0) と入力しましょう。
EOMONTHは「開始日から起算して、指定した月だけ前後の月末」を返す関数です。
第2引数を 0 にすると当月の月末、1 にすると翌月の月末になります。
フィルハンドルでC9セルまでコピーすると、各行の月末日が一気に入りました。
カレンダーを見て手で調べる必要がなくなり、入力ミスも防げます。
EOMONTHで月末日を自動設定した表

EOMONTH関数の入力画面

C2セルに =EOMONTH(A2,0) と入力します。
入力中は引数のヒントが表示されるので、順番を確認しながら進められます。
=EOMONTH(A2,0) の入力画面

STEP4. 翌月末を求める(EOMONTHの第2引数)

同じEOMONTH関数で、翌月末も求められます。
D2セルに =EOMONTH(A2,1) と入力します。
第2引数を 1 にするだけで、1ヶ月後の月末になります。
フィルハンドルでD9セルまでコピーしましょう。
「翌月末に締める」といったスケジュール管理に便利ですね。
EOMONTHの第2引数で翌月末を求めた表

STEP5. 1ヶ月後を求める(EDATE関数)と月末との違い

次は1ヶ月後の同じ日を求めるEDATE関数です。
E2セルに =EDATE(A2,1) と入力して、E9セルまでコピーします。
EDATEは「開始日の1ヶ月後の同じ日」を返す関数で、月末ではなく同じ日がポイントです。
たとえばA2が2026/1/15なら、EDATEの結果は2026/2/15、EOMONTHの結果は2026/1/31になります。
この違いを押さえておくと、作りたい日付で迷いません。

POINT

「月末」を出したいなら EOMONTH、
「同じ日」を出したいなら EDATE。
迷ったら「月末か、同じ日か」で選びましょう。

EDATEで1ヶ月後を求めた表

EDATE関数の入力画面

E2セルに =EDATE(A2,1) と入力します。
第2引数に月数を入れると、その月数だけ後ろの同じ日付が返ります。
=EDATE(A2,1) の入力画面

STEP6. 曜日を自動表示する(TEXT関数・ユーザー定義書式)

仕上げに曜日を自動で表示しましょう。
F2セルに =TEXT(A2,”aaa”) と入力して、F9セルまでコピーします。
TEXT関数の表示形式に aaa を指定すると、曜日だけを取り出せます。
「aaaa」にすると「木曜日」のようにフル表記になります。
数式を使わず、ユーザー定義書式で曜日を出す方法もあります。
日付のセルを選び、Ctrl+1 → ユーザー定義 で yyyy/m/d(aaa) と入力すると、日付と曜日をまとめて表示できます。
TEXT関数で曜日を自動表示した表

日付の計算|使い分けの比較表

ここまでに使った数式の使い分けを表にまとめました。
出したい日付の種類に合わせて選んでください。

やりたいこと 使う数式 例(A2=2026/1/15のとき)
1日後の日付 =A2+1 2026/1/16
1ヶ月後の同じ日 =EDATE(A2,1) 2026/2/15
当月の月末 =EOMONTH(A2,0) 2026/1/31
翌月の月末 =EOMONTH(A2,1) 2026/2/28
土日を除いた10営業日後 =WORKDAY(A2,10) 2026/1/29

VBAで日付の一覧を一括作成する

件数が多く、毎回同じ作業をするなら、VBAでまとめて作るのがいちばんラクです。
Alt+F11でVBAエディターを開き、標準モジュールに次のコードを貼り付けます。

Sub SetDateList()
    Dim r As Long
    Dim d As Date
    For r = 2 To 9
        d = Cells(r, 1).Value
        Cells(r, 2).Value = DateAdd("d", 1, d)
        Cells(r, 3).Value = WorksheetFunction.EoMonth(d, 0)
        Cells(r, 4).Value = WorksheetFunction.EoMonth(d, 1)
        Cells(r, 5).Value = DateAdd("m", 1, d)
        Cells(r, 6).Value = Format(d, "aaa")
    Next r
End Sub

実行すると、B列〜F列に連続日付・月末日・翌月末・1ヶ月後・曜日が一瞬で入ります。
開始日をコードで作りたいときは、DateSerial(2026, 1, 15) のように書くと基準日を指定できます。

タカヒロ

タカヒロ
月末を出したいときは WorksheetFunction.EoMonth、1ヶ月後なら DateAdd(“m”, 1, d) と使い分けます。
Excelの関数をVBAから呼ぶときは、頭に WorksheetFunction. を付けるのがポイントです。

うまくいかないときの対処法(トラブルシュート)

実際に試すと、思ったようにいかないこともあるかもしれません。
よくあるつまずきと対処法をまとめました。

症状 原因 対処
日付が「46037」のような数字で表示される 表示形式が「標準」になっている(シリアル値) セルを選び Ctrl+Shift+3 で日付形式にする/ホーム→表示形式で日付を選ぶ
月末の日付がズレる EOMONTHの第2引数の指定が違う 当月の月末は =EOMONTH(A2,0)、翌月末は =EOMONTH(A2,1) にする
土日を除いた日付にしたい +1では土日も含まれてしまう =WORKDAY(A2,日数) を使う/祝日も除くなら WORKDAY.INTL を使う
日付として認識されない(左寄せのまま) 「2026.1.15」など区切り文字が違う/文字列になっている 「2026/1/15」の形式で入力し直す/=DATEVALUE() で日付に変換する
+1しても日付が変わらない 基準日が文字列になっている まず基準日を日付として認識させ直す(#VALUE! が出ていないか確認)

関数の説明

今回使う4つの関数の概要です。
日付の計算でよく使う関数なので、違いを押さえておきましょう。

EOMONTH関数(イーオーモンス)

書式 =EOMONTH(開始日, 月)
できること 開始日から起算して、指定した月数だけ前後の月末の日付を返します。
戻り値 月末の日付(シリアル値)
こんなときに 当月の月末(第2引数=0)や翌月末(=1)を自動で出したいとき。
注意 第2引数に負の数を入れると過去の月末も求められます。基準日が文字列だと #VALUE! になります。
=EOMONTH(A2, 0)

EDATE関数(イーデイト)

書式 =EDATE(開始日, 月)
できること 開始日から起算して、指定した月数だけ前後の同じ日を返します。
戻り値 日付(シリアル値)
こんなときに 「1ヶ月後」「3ヶ月後」の同じ日付を出したいとき。
注意 月末が存在しない日(1/31の1ヶ月後など)は、その月の末日に丸められます。
=EDATE(A2, 1)

TEXT関数(テキスト)

書式 =TEXT(値, 表示形式)
できること 数値や日付を、指定した表示形式の文字列に変換します。
戻り値 文字列
こんなときに 日付から曜日だけを取り出したいとき(“aaa” で「木」、“aaaa” で「木曜日」)。
注意 結果は文字列になるので、並べ替えや再計算には向きません。表示だけでよいならユーザー定義書式が手軽です。
=TEXT(A2, "aaa")

WORKDAY関数(ワークデイ)

書式 =WORKDAY(開始日, 日数, [祭日])
できること 土日(と指定した祝日)を除いて、指定した営業日数だけ後の日付を返します。
戻り値 日付(シリアル値)
こんなときに 「10営業日後」の納期や回答期限を出したいとき。
注意 土日は自動で除外されますが、祝日は自分で指定しないと除外されません。地域の休日に合わせたい場合は WORKDAY.INTL を使います。
=WORKDAY(A2, 10)

完成

開始日(A列)を入れるだけで、連続日付・月末日・翌月末・1ヶ月後・曜日がすべて自動で表示されました。
思ったとおりに動きましたか?
開始日を1つ変えれば、B列〜F列の日付もすべて自動で追従します。
月末の日付をカレンダーで調べる手間がなくなり、スケジュール管理がぐっとラクになります。
日付の一覧が完成した表

さいごに

いかがでしょうか。

今回は、

・1行の数式で連続した日付を入力する方法(+1・EOMONTH・EDATE)

についてまとめました。

まずは今回のサンプル表で、ぜひ一度試してみてください。
開始日を1つ入れて =A2+1 をフィルするだけで、日付の一覧が一気に作れます。
月末の日付を調べる手間もなくなるので、日々のスケジュール管理がぐっとラクになりますよ。
また、他にも便利なExcelの時短テクニックがありますので、よろしければご参照頂ければと思います。

ぜひ試してみてください。



この記事の関連キーワード

こちらの記事の関連キーワード一覧です。クリックするとキーワードに関連する記事一覧が閲覧できます。






コメントを残す

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です

CAPTCHA ImageChange Image