Excel関数 逆引き集 | 週番号を取得 → WEEKNUM

Excel
スポンサーリンク

概要

「日付が“年の第何週”か」を知りたいなら、WEEKNUM関数が最短です。週の始まり(日曜/月曜/ISO基準)を指定でき、返り値は1〜53の週番号。プロジェクトの週次管理、売上週次集計、レポートの“Week X”ラベル作りに重宝します。


基本の使い方

書式

=WEEKNUM(日付, [週の始まり])
  • 週の始まり(return_type)は省略可能。典型は以下。
    • 1: 日曜始まり(米国式)
    • 2: 月曜始まり(日本の業務でよく使う)
    • 21: ISO週番号(ISO 8601、週の始まり=月、週1は年内最初の木曜を含む週)

=WEEKNUM("2025/12/17",2)   // 月曜始まりでの週番号
=WEEKNUM(A2,1)             // 日曜始まりでの週番号
=ISOWEEKNUM(B2)            // ISO週番号(Excel 2013以降)

具体例

セル参照で週番号を取得(業務向けは月曜始まり)

=WEEKNUM(A2,2)

A2の日付の「月曜始まりの週番号」を返します。

ISO週番号を使う(国際規格)

=ISOWEEKNUM(B2)

国・部門をまたぐレポートで週の整合を取りたいときに便利です。

「Week XX」ラベルで表示

="Week " & TEXT(WEEKNUM(C2,2),"00")

C2の日付が属する週を“Week 01〜Week 53”で見やすく。


応用テンプレート

週次集計(ヘルパー列で週番号を付与 → SUMIFS)

1行目に週番号:

=WE​​EKNUM(A2,2)

週次合計(売上をD列、日付A列とする):

=SUMIFS($D:$D, $A:$A, ">="&開始週初日, $A:$A, "<="&終了週末日)

週の境界を厳密に集計したい場合は「週の開始・終了日」を求めて条件に使います(次項)。

“週の開始(週初)/終了(週末)”を求める(月曜始まり)

週初(当該週の月曜):

=日付 - WEEKDAY(日付,2) + 1

週末(当該週の日曜):

=日付 - WEEKDAY(日付,2) + 7

当月の週番号一覧を作る(動的配列)

当月の全日付の週番号を並べたい場合(Microsoft 365):

=LET(
  d, EOMONTH(TODAY(),-1)+1,
  n, DAY(EOMONTH(TODAY(),0)),
  dates, SEQUENCE(n,,d,1),
  WEEKNUM(dates,2)
)

ISO週番号で週次ピボット(ヘルパー列)

=ISOWEEKNUM(A2)

この列をピボットテーブルの行ラベルにすれば、ISO準拠の週次集計が可能。


よくあるつまずきと対策

週の始まり指定で結果が変わる

同じ日付でも WEEKNUM(...,1)(日曜始まり)と WEEKNUM(...,2)(月曜始まり)では週番号が異なることがあります。社内ルールに合わせて“2(月曜始まり)”を使うのが無難。

ISO週番号と通常週番号の違い

ISOは「週1=年内最初の木曜を含む週」。年末年始で週番号や“週の属する年”がズレます。国際運用や他システム連携では ISOWEEKNUM を推奨。

週に属する“年”の表記

年末年始付近で「週番号は新年、日付は旧年」という状況が起きます。週の年まで表示したい場合は、運用方針(暦年かISO週年)を決めてから設計しましょう(ISOの“週年”は追加ロジックが必要)。

文字列日付や時刻混在

“YYYY/MM/DD”の文字列は環境によって誤解釈あり。日付は“日付型”で入力するか、DATE(年,月,日)で生成。時刻付きでもWEEKNUMは日付部分のみを見るので基本的に問題ありません。


例題

問題1: A2の日付の週番号を、月曜始まりでB2に表示してください。

=WEEKNUM(A2,2)

問題2: C2の日付の週番号を、日曜始まりでD2に表示してください。

=WEEKNUM(C2,1)

問題3: E2の日付のISO週番号をF2に表示してください。

=ISOWEEKNUM(E2)

問題4: G2の日付が属する週の“月曜(週初)”と“日曜(週末)”をH2とI2に表示してください。

週初:

=G2 - WEEKDAY(G2,2) + 1

週末:

=G2 - WEEKDAY(G2,2) + 7

問題5: A2:A100の売上(B列)を“月曜始まりの週”で合計し、週番号ごとにC2以降へ表示してください(ヘルパー列利用)。

ヘルパー列(D列に週番号):

=WEEKNUM(A2,2)

指定週(例:週番号がX)の合計:

=SUMIF($D$2:$D$100, X, $B$2:$B$100)

まとめ

WEEKNUMは“週の始まり”の指定ひとつで柔軟に運用できる週番号取得の定番。社内は月曜始まり(2)、国際運用はISO(ISOWEEKNUM)を使い分け、必要に応じて“週初・週末”を導出して集計条件にする。この設計を押さえれば、週次の計画・集計・レポートが一貫してシンプルに回ります。

タイトルとURLをコピーしました