Tool / 日付

日数・日付計算(営業日・和暦・満年齢)

日付を入れると、日数、営業日、○日後の日付、和暦、満年齢、曜日が出る。祝日は内閣府の一覧で数える。入れた日付はブラウザの外に送らない。

開始日を数えるか

期限や経過日数は「含めない」。開催日数や勤務した日の数のように両端の日を数えるなら「含める」。

計算結果

日数-
営業日-
    期間中の祝日・休日

    上のタブで用事を選び、日付を入れると答えがすぐ出る

    1. タブから用事を選ぶ。2つの日付の差、○日後の日付、和暦と西暦、満年齢、曜日と週番号の5つがある。
    2. 日付の欄を押すとカレンダーが開く。キーボードなら年、月、日の順に数字を打てる。「今日」を押すと今日の日付が入る。
    3. 日付の差では、開始日を数えるかを選ぶ。期限や経過日数なら「含めない」、研修の開催日数のように両端の日を数えるなら「含める」。営業日も同じ範囲で数える。
    4. 会社が年末年始に休むなら、年末年始の欄に印を付ける。12月29日から1月3日の平日も営業日から外れる。
    5. 「結果をコピー」で答えとURLを写せる。URLには入れた日付が入るので、送った相手にも同じ画面が開く。

    祝日は内閣府の一覧、月末と年齢は民法の数え方に合わせた

    祝日は、内閣府が公表している「国民の祝日・休日」のCSV(syukujitsu.csv)を2026年10月19日に取得し、そのままページに埋め込んだ。1955年1月1日から2027年11月23日までの1,067日で、振替休日と国民の休日も「休日」という名前で入っている。振替休日を自分で計算する式は持たせていない。一覧にない2028年以降と1954年以前にかかる営業日は「祝日は未確定」と表示し、土日だけを除いた数を出す。営業日は、土曜、日曜、この一覧の日を除いた日だ。年末年始の欄は、行政機関の休日に関する法律第1条にある12月29日から1月3日を足して除く。

    「○か月後」は、起点と同じ日付の日を答えにし、その月に同じ日がなければ月末にする。1月31日の1か月後は2月28日(うるう年は29日)。民法第143条第2項ただし書の、最後の月に応当する日がないときはその月の末日に満了する、という決まりに合わせた。契約の期間のように、翌日から数えて何か月で終わるかは「期間が終わる日」として別に出す。民法第140条で初日は数えず、第143条で応当する日の前日に終わるので、2027年2月28日から1か月の期間は3月28日ではなく3月31日に終わる。作っていて一番意外だったのがここで、月末の日だけ2つの答えがずれる。

    「○営業日後」は起点の翌日から営業日を数える。ExcelのWORKDAY関数と同じ答えになるようにしたので、0営業日後は起点の日のままになる。和暦は、令和が2019年5月1日、平成が1989年1月8日からで、どちらも元号を改める政令の附則で施行日が決まっている。大正は1912年7月30日、昭和は1926年12月25日からで、総務省統計局のコラムが改元の詔書の官報の日付を挙げている。明治5年12月3日を明治6年1月1日にした改暦の布告より前は旧暦なので、日付の換算は1873年1月1日からにし、それより前は年だけを換算する。

    満年齢は、年齢計算ニ関スル法律で出生の日から数え、民法第143条を当てはめる。誕生日の前日が終わるときに1つ加わるので、このツールは誕生日の当日から1つ上の年齢を出し、法律上の加わる日も並べる。2月29日生まれは、うるう年でない年は2月28日が終わるときに加わり、3月1日から1つ上になる。週番号はISO 8601の決まりで、月曜始まり、その年の最初の木曜日を含む週を第1週とする。

    確かめた資料は次のとおり。どれも2026年10月19日に確認した。

    計算はJavaScriptとPythonで別々に書いた。ランダムな日付の組に、2月29日、改元の日、年末年始、祝日の一覧の切れ目を混ぜて、日数の差、営業日、○日後、和暦、満年齢、曜日を48,065件(日付の差12,960件、○日後12,388件、和暦10,732件、満年齢6,500件、曜日5,484件と祝日の一覧1,067日)突き合わせ、不一致は0件だった。

    対応していないものもある。1872年以前の日付(旧暦)、2101年以降、お盆休みや創立記念日のような会社だけの休み、時刻を単位にした計算は入れていない。民法第142条の、期間の末日が休日で取引をしない慣習があるときは翌日に延びる、という決まりも答えには入れていない。答えの日が土日や祝日なら、そう表示するだけにした。

    数えていて引っかかりそうなところ

    4月1日生まれはなぜ1つ上の学年になるのか

    学校教育法第17条は、満6歳に達した日の翌日以後の最初の学年の初めから小学校に入ると決めている。年齢は誕生日の前日が終わるときに1つ加わるので、4月1日生まれは3月31日に満6歳に達し、翌日の4月1日がちょうど学年の初めになる。4月2日生まれは4月1日に達するので、入学は翌年の4月になる。満年齢のタブで生年月日を入れると、小学校に入る年も出る。

    「10日以内」の締め切りは何日になるか

    日を単位に決めた期間は、民法第140条で初日を数えない。10月19日に受け取った書類の「10日以内」は10月20日から数えて10月29日まで。○日後のタブで、起点を1日目に数える印を外したまま10日後を出すと同じ日になる。ただし午前0時から始まる期間は初日を数え、法令や契約に別の決まりがあればそちらが先になる。

    2028年の営業日は数えられるか

    土日を除いた数は出るが、祝日は未確定と表示する。内閣府のCSVは2027年11月23日の勤労感謝の日で終わっていて、2028年の祝日はまだ載っていない。一覧が更新されたら、このページの祝日も入れ替える。

    平成31年5月1日と書かれた書類はどう換算するか

    西暦の2019年5月1日として出し、その日の元号は令和元年5月1日だと並べて示す。平成は2019年4月30日で終わっているので、平成31年5月1日という日は暦の上にはない。平成35年のように年だけ書いた場合も、2023年と令和5年を出す。

    入れた日付はどこかに送られるか

    送られない。計算も祝日の一覧もページの中にあり、入力した日付はサーバーに届かない。端末に残るのは前回の入力だけで、ブラウザのサイトデータを消せば消える。

    同じ数え方をExcelでしたいとき

    Excelで営業日を数えるなら、内閣府のCSVの取り込み方とWORKDAYが#VALUE!になる落とし穴を祝日の判定の記事に書いた。年末年始に役所と銀行がいつまで開いているかは年末年始の営業日の記事で、2027年に土曜と重なる祝日と出勤日の数は土曜の祝日の記事で数えた。

    有給を何日足せば何連休になるかは有給で連休の記事に2027年の全部の組み合わせを並べた。貼り付けた日付が文字列になって引き算できないときは、Excelの日付の型の記事から直せる。