本文へスキップ
totonoe.tech

Excel・表計算を整える

初級

Excel日付関数を整える。

= 勤続年数・支払期日・営業日を、関数と一緒に計算できる

Excel の日付が初めての方は、先に そもそも Excel の日付とは・どんな場面で使うか をどうぞ。

① 期間を数える — DATEDIF

2つの日付の間が「何年・何ヶ月・何日」かを数える関数。勤続年数・年齢・記念日からの経過はぜんぶこれ一本です。3つ目の引数("Y" や "YM")で数え方を切り替えます。

2つの日付を入れる 入力するそばから計算(会社のPCでも、入力は外に出ません)

実例プリセット

結果

計算中…

—

期間を区切って見ると(帯の長さは実際の日数に比例・短い区間は読めるよう最小幅あり)

    単位 意味 結果
    "Y" 満の年数 勤続年数・年齢はこれ —
    "M" 満の月数(通算) 「通算◯ヶ月」を出したいとき —
    "D" 日数 日付同士の引き算と同じ —
    "YM" 年数を除いた端数の月 「◯年◯ヶ月」の◯ヶ月部分 —
    "YD" 年数を除いた端数の日 1年未満の日数 —
    "MD" 年・月を除いた端数の日 「◯年◯ヶ月◯日」の◯日部分(癖あり) —

    完成数式(あなたの日付入り・セルに貼るだけで動く)

    —
    —

    2本目は「◯年◯ヶ月◯日」を1つのセルで出す定番レシピ。セル参照で使うなら A2 に開始日・B2 に終了日を入れて、上の表の数式をどうぞ。

    💡 豆知識:DATEDIF は入力補完に出ない「隠し関数」

    セルに「=DATE」と打っても候補に DATEDIF は現れず、関数の挿入ダイアログにも載っていません。昔の表計算ソフト Lotus 1-2-3 との互換のためだけに残されている関数だからです。でも 手で最後まで打てば Excel でも Google スプレッドシートでもちゃんと動きます。「候補に出ない=使えない」ではないので安心してください。

    ② 月末日を出す — EOMONTH

    基準日から◯ヶ月後の「月末日」を返す関数。月によって28日・30日・31日と変わる月末を自動で当ててくれるので、請求書の「今月末締め・翌月末払い」の支払期日づくりの定番です。

    基準日と「何ヶ月後」を入れる 入力するそばから計算(会社のPCでも、入力は外に出ません)

    結果

    計算中…

    —

    前月末(-1)

    —

    当月末(0)=締め日

    —

    翌月末(1)=支払期日の定番

    —

    翌々月末(2)

    —

    完成数式

    —
    —

    結果が「46356」のような数字で出たら、それは日付の中身(シリアル値)。セルの表示形式を「日付」に変えれば直ります(下の🔰参照)。「◯ヶ月後の同じ日」が欲しいときは兄弟関数の EDATE をどうぞ。

    💡 実務例:請求書の支払期日

    「今月末締め・翌月末払い」なら、請求日のセルが A2 のとき支払期日は =EOMONTH(A2,1)。 7月4日の請求 → 7月末で締めて、支払期日は 8月31日。月末が 28日でも 31日でも自動で合わせてくれます。

    ③ 営業日で数える — WORKDAY と NETWORKDAYS

    土日を除いた「営業日」の計算。◯営業日後の日付を出すのが WORKDAY、2つの日付の間の営業日数を数えるのが NETWORKDAYS。祝日リストを渡せば祝日も除けます。

    祝日リスト(任意・下の2つの計算の両方で使います) 1行に1日・空欄なら土日だけ除外

    祝日リストは空です(土日だけを除いて計算します)。

    Excel も日本の祝日を自動では知りません。実務では祝日を縦に並べた列を作って第3引数で渡します(内閣府の「国民の祝日」一覧などからコピペ)。

    ◯営業日後はいつ?(WORKDAY) 入力するそばから計算(会社のPCでも、入力は外に出ません)

    —

    —

    数えた日をカレンダーで見る

    • 数えた営業日(番号は数えた順)
    • 土日
    • 祝日リストの日
    • 開始・終了・答えの日(太い枠)
    —

    開始日は数えず、翌営業日から1・2・3…と数えます(Excel と同じ)。マイナスの営業日で「納期から逆算」もできます。

    2つの日付の間は何営業日?(NETWORKDAYS) 入力するそばから計算(会社のPCでも、入力は外に出ません)

    —

    —

    数えた日をカレンダーで見る

    • 数えた営業日(番号は数えた順)
    • 土日
    • 祝日リストの日
    • 開始・終了・答えの日(太い枠)
    —

    開始日・終了日の両方を含んで数えます。「今月の稼働日数」「有給まであと何営業日」などに。

    💡 豆知識:土日休みじゃない職場は「.INTL」

    WORKDAY / NETWORKDAYS が除くのは土日固定。火水休みのお店などは WORKDAY.INTL ・ NETWORKDAYS.INTL を使うと週末の曜日を自由に指定できます。

    ④ 見た目を整える — TEXT

    日付を「2026年7月4日(土)」のような好きな見た目の文字列に変える関数。表示形式コード(yyyy・m・d・aaa …)をここでミニ体験できます。

    日付と表示形式を入れる 入力するそばから計算(会社のPCでも、入力は外に出ません)

    よく使う形式(押すと上の欄に入ります)

    結果

    計算中…

    完成数式

    —
    —

    ⚠️ TEXT の結果は「文字列」。見た目は日付でも、足し算や並べ替えには使えなくなります。計算は日付のまま・見た目だけ TEXT、と列を分けるのがコツ。

    コード 意味(2026年7月4日の場合)
    yyyy 西暦4桁(2026)
    yy 西暦下2桁(26)
    m / mm 月(7 / 07)
    d / dd 日(4 / 04)
    aaa 曜(土)
    aaaa 曜日(土曜日)
    ggge 和暦(令和8)
    ddd / dddd 英語曜(Sat / Saturday)

    🔰 かんたんに言うと:Excel の日付は「通し番号」

    Excel は日付を「1900年1月1日を 1 とした通し番号(シリアル値)」で覚えています。 今日(—)は — 番。 だから「日付の引き算=ただの数字の引き算」で日数が出るし、DATEDIF も EOMONTH もこの番号の上で動いています。 セルに 46207 のような数字が出たら、それは日付の中身が見えているだけ——表示形式を「日付」に変えれば直ります。

    おまけ:Excel は実在しない「1900年2月29日」を 60 番として持っています。昔のソフト Lotus 1-2-3 の間違いに合わせたまま今日まで残っている有名な仕様ですが、1900年3月1日以降の日付には影響しません。

    そもそも Excel の日付とは

    日付は、見た目は日付でも中身は「通し番号」。

    Excel は日付をシリアル値(通し番号)で覚えています。Windows 版の標準では 1900 年 1 月 1 日が 1 で、1 日たつごとに 1 ずつ増えます。セルに日付として見えるのは、この番号に「表示形式」で日付の見た目を付けているからです。

    番号なので、引き算で日数が出て、足し算で「30 日後」も出せます。月末や営業日、勤続年数のように面倒な計算は、EOMONTH・WORKDAY・NETWORKDAYS・DATEDIF といった日付の関数に任せます。

    どこで・どんな場面で使うか

    • 支払期日を月末で出す

      「月末締め翌月末払い」の支払日を、請求日から EOMONTH で自動で出します。

    • 納期を営業日で数える

      「受注から 5 営業日後」を、土日と祝日を除いて WORKDAY で計算します。

    • 勤続年数を出す

      入社日から今日までの年数・月数を DATEDIF で出し、表彰や休暇の判定に使います。

    • 稼働日数を数える

      月ごとの稼働日数を NETWORKDAYS で数え、1日あたりの工数や請求額の計算に使います。

    • 日付の見た目を整える

      「2026年11月2日(月)」のような表示を TEXT 関数で作り、書類の日付に使います。

    知らないと何が困るか

    • 文字になった日付は計算できない。見た目が日付でも文字として入っていると、引き算や並べ替えがうまくいきません。
    • 土日・祝日を手で数えることになる。営業日の関数に祝日の一覧を渡せば、数え間違いがなくなります。
    • 月末や年数の計算でずれやすい。月ごとに日数が違うので、日数を足すだけでは月末や満年数が合いません。

    上のツールに日付を入れて、期間や月末、営業日がどう出るか確かめてみてください。

    使い方と読み方

    日付計算の「実務の型」は、この4関数でほぼ足りる。

    1. 1

      期間は DATEDIF(勤続年数・年齢)

      単位 "Y" で満の年数、"YM"・"MD" と組み合わせれば「◯年◯ヶ月◯日」。誕生日や記念日が来ていない年は数えない、実際の暦どおりの計算です。入力補完に出ない隠し関数ですが、手で打てば動きます。

    2. 2

      締め・支払いは EOMONTH(月末日)

      「今月末締め・翌月末払い」は =EOMONTH(請求日,1) の一発。2月が28日か29日かも、月が30日か31日かも自動で判断してくれます。

    3. 3

      営業日は WORKDAY と NETWORKDAYS

      「10営業日後」を出すのが WORKDAY、「間に何営業日あるか」を数えるのが NETWORKDAYS。土日は自動で除きますが、日本の祝日は自分で祝日リストを渡す必要があります。ここが実務でいちばん忘れやすいポイント。

    4. 4

      見た目だけ TEXT、計算は日付のまま

      「2026年7月4日(土)」のような表示は TEXT 関数で。ただし結果は文字列になり計算に使えなくなるので、計算用の列と表示用の列を分けるのが崩れない表の作り方です。

    このページの計算は Excel の実挙動に合わせています。DATEDIF の "MD" が月末またぎでマイナスになる癖や、シリアル値の「1900年2月29日」まで含めて、Excel に貼ったときに同じ答えになることを優先しました。Google スプレッドシートでもここで生成した数式はそのまま使えます(TEXT の和暦 ggge のみ Excel 専用)。

    🔒 計算はすべてあなたのブラウザの中(純JavaScript)で完結します。入力した日付や祝日リストはサーバに送られません(送信ゼロ)。

    このツールについて

    「勤続何年?」「支払期日はいつ?」「10営業日後は?」——実務の日付計算を、答えと一緒に Excel の完成数式で覚えられる体験ツールです。日付を入れるとその場で計算し、コピーしてそのまま貼れる数式(DATEDIF・EOMONTH・WORKDAY・NETWORKDAYS・TEXT)を生成します。すべてこの端末の中で完結(送信ゼロ)。

    勤続年数はDATEDIF、支払期日はEOMONTH、10営業日後はWORKDAY。実例で計算して、数式をコピーして持ち帰る。

    主な機能

    • DATEDIF:2つの日付から年数・月数・日数(勤続年数・年齢)
    • EOMONTH:月末締め・翌月末払いの支払期日
    • WORKDAY / NETWORKDAYS:営業日の加算・日数(祝日リスト対応)
    • TEXT:日付の表示形式(yyyy年m月d日(aaa) 等)
    • 各機能で完成数式を自動生成してコピー
    • シリアル値の考え方をやさしく解説・送信ゼロ
    • 期間を年・ヶ月・日の帯で、営業日は数えた日のカレンダーで表示

    よくある質問

    Q. DATEDIFが入力候補に出てきません。

    A. DATEDIFは古いLotus 1-2-3互換のために残されている「隠し関数」で、入力補完に出ませんが手で打てばちゃんと動きます。=DATEDIF(開始日, 終了日, "Y") のように使います。

    Q. 勤続年数や年齢はどう計算しますか?

    A. =DATEDIF(入社日, TODAY(), "Y") で満年数が出ます。"YM" を使えば「◯年◯ヶ月」の端数の月も出せます。本ツールにプリセットがあります。

    Q. 「月末締め・翌月末払い」の期日は?

    A. =EOMONTH(請求日, 1) で翌月末が出ます。0なら当月末、2なら翌々月末。EOMONTHは「◯ヶ月後の月末」を返す関数です。

    Q. 「10営業日後」はどう出しますか?

    A. =WORKDAY(開始日, 10) で土日を除いた10営業日後が出ます。祝日も除きたい場合は第3引数に祝日リストの範囲を渡します。逆に2つの日付の間の営業日数は NETWORKDAYS です。

    Q. 日付を「2026年7月5日(日)」のように表示したい。

    A. =TEXT(A1, "yyyy年m月d日(aaa)") で文字列として作れます。aaa が曜日の短縮形です。表示形式(セルの書式)で見た目だけ変える方法との違いも本ツールで解説しています。

    Q. Excelの日付の「シリアル値」とは何ですか?

    A. Excelは日付を「1900年1月1日を1とした連番」で持っています。だから日付同士の引き算ができ、45000のような数字が出てきたら日付の書式が外れただけ、と分かります。

    Q. 入力した日付はどこかに送られますか?

    A. いいえ。すべてブラウザ内で計算します(送信ゼロ)。

    入力値はURLの「#」以降に入るためサーバーには送信されません。リンクを開くと同じ状態を復元します。

    続けて整える

    totonoe.tech を運営する株式会社Koinobori は、法人向けの研修サービス「NOBORIBA®」も運営しています。 ここで手を動かした内容を、講師から教わる形の研修です。このページの道具は無料のまま、登録もいりません。

    運営サイト

    私たちが運営するサイト