有休の年5日が誰にあと何日残っているか、期限の直前まで分かりません|入社日ごとに違う基準日と時間単位年休を、下期のうちに勤怠データから年休管理簿へ寄せる手順
この記事の事例は、実際にいただくご相談をもとにした想定ケースです。特定の企業を指すものではありません。
年5日の有休を取らせる義務そのものは、多くの会社ですでに知られています。それでも毎年同じことが起きるのは、義務の中身ではなく「誰があと何日足りないか」を出す仕組みが社内にないためです。パートを含めて62名の印刷会社を想定して、下期のうちにどこまで作れるかを順に見ていきます。
「あと2日足りない人」に気づくのが、期限の1か月前になっています
年10日以上の年次有給休暇が付与された労働者には、基準日から1年以内に5日を取得させることが使用者に義務づけられています(厚生労働省「年5日の年次有給休暇の確実な取得 わかりやすい解説」)。管理監督者やパートタイムの方も、付与日数が10日以上であれば対象に入ります。
つまずくのは、締め切りが人ごとに違う点です。入社日を基準に付与していると、基準日は4月1日や10月1日だけでなく、6月16日にも11月1日にも散らばります。62名いれば期限日は20通り以上になり、全社共通の「あと何日」という一覧が作れません。
しかも付与日数と基準日は労務担当のExcel台帳にあり、取得実績は勤怠システムにあります。この2つを突き合わせるのは年に1回か、基準日が近づいた人を思い出したときだけです。時間外の集計が翌月にしか出ないと36協定の残り回数が見えなくなるのと同じで、数字が遅れて出るほど打てる手が減ります。
基準日を人ごとに持つか、全社で1つに寄せるかを先に決めます
基準日を全社で統一すれば期限は揃いますが、切り替えた年は前の基準日からの1年と新しい1年が重なります。重なった期間については、その月数を12で割って5を掛けた日数を取得させる扱いも認められると、前掲の解説に示されています。就業規則の変更も伴いますので、下期の3か月で終わる話ではありません。
そこで今回は、基準日は入社日のまま動かさず、期限を計算で出す側に寄せると決めました。統一するかどうかは、期限が一覧で見えるようになってから来期に判断すれば足ります。
管理簿に載せる項目を、どのデータから取るか割り当てます
年次有給休暇管理簿には、取得した時季・日数・基準日を労働者ごとに記録し、3年間保存することとされています。この3つがどこにあるかを先に割り当てます。
| 管理簿に載せる項目 | いまある場所 | 取り出す方法 |
|---|---|---|
| 基準日 | 労務担当のExcel台帳 | 社員マスタに列を足して持たせる方法 |
| 付与日数 | 労務担当のExcel台帳 | 入社日と勤続年数から計算させる方法 |
| 取得した日と日数 | 勤怠システムの休暇申請 | 日次データをCSVで毎日取り込む方法 |
| 半日・時間単位の区分 | 勤怠システムの申請区分 | 申請区分を変換せずそのまま持つ方法 |
そのうえで、管理簿1行の意味を文章で固定します。ここが曖昧なままだと、あとで数え方の議論が蒸し返されます。
基準日 = その人に年休を付与した日(入社6か月後、以降は1年ごと)
履行期間 = 基準日から1年間(この期間の中で5日を取らせます)
義務の対象 = その基準日の付与日数が10日以上の人
取得済み日数 = 履行期間内に取った 1日 と 半日(0.5日) の合計
残り必要日数 = 5 - 取得済み日数(0未満にはしません)
残り日数 = 基準日 + 1年 - 本日
時間単位年休は日数に足さず、別の列で数えます
労使協定を結べば、年5日の範囲内で時間単位の取得ができます(厚生労働省「年次有給休暇の時間単位付与」)。ただし時間単位で取得した分は、年5日の義務の日数には含められません。半日単位は0.5日として数えられます。
勤怠データでは「有休 3時間」も「有休 1日」も同じ休暇コードで入っていることが多く、時間数を所定労働時間で割り戻して合計すると、義務の達成日数が実際より多く見えます。3時間の取得が7回あっても、義務の側では0日のままです。
-- 履行期間の中で5日に届いていない人を、期限の近い順に出します
SELECT
g.emp_id,
g.grant_date AS 基準日,
DATE_ADD(g.grant_date, INTERVAL 1 YEAR) AS 期限,
COALESCE(SUM(CASE l.unit
WHEN 'full' THEN 1 -- 1日単位は1日と数えます
WHEN 'half' THEN 0.5 -- 半日単位は0.5日と数えます
ELSE 0 END), 0) AS 取得済み日数 -- 'hour' は数えません
FROM leave_grant g
LEFT JOIN leave_record l
ON l.emp_id = g.emp_id
AND l.taken_on >= g.grant_date
AND l.taken_on < DATE_ADD(g.grant_date, INTERVAL 1 YEAR)
WHERE g.granted_days >= 10
GROUP BY g.emp_id, g.grant_date
HAVING 取得済み日数 < 5
ORDER BY 期限;
期限の3か月前に出す一覧を、月1回の労務会議に載せます
作ったのは、勤怠のCSVを毎晩1回取り込み、上の一覧を出す画面だけです。期限まで90日を切った人を上に並べ、残り必要日数と、その期間に残っている所定労働日数を並べて表示します。60日を切った人には、時季指定の対象として労務担当が面談する運用にしました。
下期に作るのはここまでとし、時季指定の通知書の自動作成と、基準日の全社統一は来期に回しました。Excelの勤怠集計では最低賃金改定の試算も合わなくなるように、土台の数え方を直す作業が先に来ます。
数え方でつまずくのは、繰越分・分割付与・履行期間の途中終了です
前年からの繰り越し分を取得した場合も、年5日として数えられます。ここを「今年付与分だけ」と誤って集計すると、足りていない人が実際より多く出て、不要な取得指示が飛びます。
入社時に10日を分割して付与している場合は、基準日が年に2つ立ち、履行期間が重なります。この重なりを1行で持とうとすると計算が合わなくなりますので、基準日ごとに行を分けて持ちます。
履行期間の途中で退職する人、育児休業や休職で出勤日がない人の扱いは、個別の判断が入ります。社内で決めきらず、所轄の労働基準監督署に確認したうえでルールを文書に残してください。そのルールを持つのが労務担当個人のExcelのままだと、どのファイルが正か分からなくなる問題がそのまま管理簿に移ります。
えらびの道では、業務システムをオーダーメイドで開発しています。今回のように、既存の勤怠システムを入れ替えずにCSVやAPIで日次データだけを取り出し、基準日ごとの履行期間で集計し直す一覧を別に作る形にも対応しています。データの可視化やレポートの自動化から予測を伴う仕組みまで扱っていますが、まずは期限の近い人を出す画面のような小さい範囲から動かし、足しながら育てる進め方をとっています。半日と時間単位の数え分けや、繰り越し分の扱いといった定義を決める部分も一緒に整理します。
年5日の管理と勤怠データの整備まで、えらびの道でお手伝いできること
合同会社えらびの道は、中小企業向けのシステム受託開発と、データ活用・DXのご支援をしています。卸売の受発注や請求、介護のシフト管理、出張販売の管理、EC・決済、業務データを集めて予測に使う基盤づくりなどを手がけてきました。実際に手を動かして作る立場から、現場で起きていることをお伝えしています。
この記事で扱った年次有給休暇管理簿についても、御社の付与ルールに合わせたかたちでお手伝いできます。入社日ごとに散らばった基準日から履行期間と残り必要日数を計算する仕組み、勤怠システムの休暇申請を日次で取り込む処理、時間単位年休を日数に混ぜずに別列で数える集計まで、いまお使いのExcel台帳と勤怠システムを残したまま、その間をつなぐ部分だけを整えるかたちも取れます。
進め方としては、全部を一度に置き換えることはしません。止まると困る1業務から動かし、残りは様子を見ながら移していきます。打ち合わせから開発まで同じ人間が担当しますので、労務のご担当者から伺った数え方の例外が、そのまま設計に入ります。
まずは、いまどの台帳とどの勤怠データが分かれているのかを伺うところからで構いません。えらびの道ではオンラインで30分ほどのご相談をお受けしており、費用はかかりません。
よくある質問
年5日の有給休暇を取得させる義務は、パートタイムの従業員も対象ですか?
付与日数が年10日以上であれば対象になります。週の所定労働日数が少なく比例付与を受けている方でも、勤続年数によっては10日以上が付与されますので、雇用形態ではなく、その基準日に何日付与したかで判定してください。管理監督者も同じく対象に含まれます。
時間単位で取った有給休暇は、年5日に数えられますか?
時間単位で取得した分は、年5日の義務の日数には含められません。半日単位の取得は0.5日として数えられます。勤怠データ上は同じ休暇コードで記録されていることが多いため、集計する前に単位の区分を列として分けて持っておく必要があります。
年次有給休暇管理簿はExcelで作ってもよいのですか?
様式は定められていないため、労働者ごとに時季・日数・基準日が分かる形であれば差し支えありません。ただし基準日が人ごとに違う場合、履行期間で切った集計を毎月手作業で更新することになります。人数が増えたところで更新が止まりやすい部分ですので、勤怠データから自動で作る形をおすすめします。
この記事は、生成AIで下書きを作成し、実務経験にもとづいて内容を確認・編集したうえで公開しています。制度・金額・要件は年度や状況によって変わるため、実際のご判断の前に公式の窓口でご確認ください。
あわせて読みたい
時間外の集計が翌月にしか出ないから36協定の上限に気づけない|年720時間と月45時間超の残り回数を、9月末までに勤怠データから月中に出す
残業の集計が翌月にしか出ないと、36協定の月45時間超が何回目かを誰も把握できません。産業機械メーカーの想定ケースで、年720時間の年度累計と45時間超の残り回数を勤怠データから月中に出すまでをまとめました。
うちは「従業員36人以上」に当たるのか誰も数えていない|2027年10月の社会保険の適用拡大に向けて、来年度予算に載せるパートの会社負担を勤怠と雇用契約のデータから見積もる【Q&A】
2027年10月から、社会保険の適用拡大が従業員36人以上の企業にも及びます。人数の数え方、加入するパートの拾い方、来年度予算に載せる会社負担の計算と保険料調整制度の扱いをQ&Aで整理します。
上期の予実差異が毎月「季節要因です」で終わる|来年度予算を12等分・前年同月比・得意先別積み上げのどれで配るかの判断基準
年間予算を12で割ると、繁忙月と閑散月の差がそのまま「季節要因」の差異になります。前年同月比で配る方法、得意先ごとに積み上げる方法と比べ、売上の波と得意先の偏りから来年度予算の配り方を決める基準を整理します。


