解説
7日間と7営業日は同じ?AIに日程を頼む前に休みと起算日をそろえよう
架空の休業日を持つ1週間で、暦日7日・平日5日・営業日4日を検算。土日、指定休業日、開始日と期限の数え方を整理。

「一週間あれば、7営業日で終わるよね」とAIの予定表を読む前に、営業日に含める日を確認しよう。暦の日数と、作業できる日数は同じとは限らないよ。
このページでは、土日と一つの指定休業日を除く、架空の職場のカレンダーを使う。まず紙のカレンダーで確認できるよ。コードで検算したい場合だけ、Python 3.12を用意しよう。
今回の数えるルール
対象期間は2026年11月9日から15日。開始日と終了日の両方を含む7日間だよ。営業日の条件は「月曜〜金曜、ただし11月11日を指定休業日として除く」と決める。
11月11日はこの例だけの架空の社内休業日で、公的な祝日だという意味ではないよ。国の祝日を自動取得する仕組みも使わない。
| 日付 | 曜日 | この例での扱い |
|---|---|---|
| 11月9日 | 月 | 営業日 |
| 11月10日 | 火 | 営業日 |
| 11月11日 | 水 | 指定休業日 |
| 11月12日 | 木 | 営業日 |
| 11月13日 | 金 | 営業日 |
| 11月14日 | 土 | 休み |
| 11月15日 | 日 | 休み |
暦日では7日、土日だけ除くと5日、今回の休業日も除くと4日になる。同じ期間でも、質問している日数によって答えが違うね。
Pythonで同じ条件を使う
from datetime import date, timedelta
start = date(2026, 11, 9)
end = date(2026, 11, 15)
closed = {date(2026, 11, 11)} # この例だけの指定休業日
days = []
current = start
while current <= end:
if current.weekday() < 5 and current not in closed:
days.append(current.isoformat())
current += timedelta(days=1)
print(days)
print(len(days))
weekdayは月曜を0、日曜を6として返す。5より小さい条件で月〜金を選び、指定休業日を除外する。結果の日付は9・10・12・13日の4件になるよ。
このコードは開始日と終了日を含める設計。開始日の翌日から数える納期へ、そのまま使わないでね。
「何営業日後」には起算日の条件も必要
例えば「受付から3営業日後」なら、受付当日を1日目にするのか、次の営業日から1日目にするのかを決める。さらに受付時刻の締め切り、相手の地域、臨時休業によっても変わるよ。
AIへの依頼には、対象期間、地域、週の休み、祝日・臨時休業日、両端を含むかを添えよう。「一般的な営業日で計算して」だけでは、同じ条件にならないかもしれない。
結果は総数と日付の一覧で確認する
4という件数だけだと、違う日を休みとして計算していても気付けない。日付と曜日、除外した理由を一緒に出してもらい、使う職場やサービスの営業カレンダーと照合しよう。

みんなのコメント 0
感想や、試してみたことを聞かせてね。コメント・返信は承認後に公開されます。
最初のコメントをどうぞ。