ExcelのISOWEEKNUM関数の使い方|ISO週番号の取得とWEEKNUMとの違い

スポンサーリンク

「この日付って第何週?」と聞かれて、カレンダーを手で数えていませんか? 特に海外拠点とやり取りがあると、ISO規格の週番号を求められる場面がありますよね。 ExcelのISOWEEKNUM関数を使えば、日付を渡すだけでISO週番号を自動で取得できますよ。

この記事では、ISOWEEKNUM関数の基本的な使い方から、年末年始の注意点、WEEKNUM関数との違いまで解説します。

ExcelのISOWEEKNUM関数とは?(ISO週番号を返す関数)

ISOWEEKNUM関数は、指定した日付がISO 8601規格で「第何週か」を返す関数です。 戻り値は1〜53の整数になります。

ISO 8601は、国際標準化機構が定めた日付・時刻の表記規格です。 この規格では、週の始まりを月曜日とします。 そして、その年の最初の木曜日を含む週が第1週です。 この規則に沿って週番号を計算してくれるのがISOWEEKNUM関数です。

たとえば「2026年1月5日(月曜日)」を渡すと、結果は「2」です。 ISO基準でこの日は2026年の第2週にあたります。

Excel 2013以降のバージョンで使用できます。

読み方・語源

読み方は「アイエスオー・ウィークナム」です。 「ISO」+「WEEK(週)」+「NUM(Number=番号)」の組み合わせです。 「ISO規格の週番号」という意味になります。

ISOWEEKNUM関数の書き方(構文と引数)

基本構文

=ISOWEEKNUM(日付)

WEEKNUM関数と違い、引数は1つだけです。 週の始まりは月曜日で固定されるため、指定する必要がありません。

引数の説明

引数必須/省略可説明
日付必須ISO週番号を調べたい日付を指定します。セル参照・日付文字列・DATE関数の結果のいずれも使えます

引数に渡す値は、Excelが日付として認識できる形式にしてください。 文字列なら「2026/4/1」のようにスラッシュ区切りで指定します。

ISOWEEKNUM関数の基本的な使い方

セル参照で日付を指定する

もっとも基本的な使い方です。 日付が入ったセルを参照します。

=ISOWEEKNUM(A2)

A2に「2026/4/6(月曜日)」が入っている場合、結果は「15」です。 ISO基準で2026年の第15週にあたります。

日付文字列を直接指定する

セル参照を使わず、数式の中に日付を直接書くこともできます。

=ISOWEEKNUM("2026/4/6")

結果は「15」です。 ただし実務ではセル参照のほうが管理しやすいですよ。

DATE関数と組み合わせる

年・月・日がそれぞれ別のセルに入っている場合は、DATE関数で日付を組み立てて渡します。

=ISOWEEKNUM(DATE(B2, C2, D2))

B2に「2026」、C2に「4」、D2に「6」が入っていれば、結果は「15」です。

ISOWEEKNUM関数の実務活用パターン

週次レポートに「第○週」表記を入れる

日付セルから「W15」のような週番号ラベルを自動で作れます。

="W"&ISOWEEKNUM(A2)

A2が「2026/4/6」なら、結果は「W15」です。 ISO週番号のラベルは「W」+数字の形式が国際的に一般的ですよ。

年とISO週番号を組み合わせた集計キーを作る

ISO週番号には「年末の日付が翌年の第1週になる」という特性があります。 そのため、年と組み合わせるときは少し工夫が必要です。

ISO週番号に対応する「ISO年」を求めるには、次の数式を使います。

=YEAR(A2-WEEKDAY(A2,2)+4)

WEEKDAY関数で曜日番号を取得し、その週の木曜日の年を求めています。 この値とISO週番号を組み合わせれば、正確な集計キーになります。

=YEAR(A2-WEEKDAY(A2,2)+4)&"-W"&TEXT(ISOWEEKNUM(A2),"00")

A2が「2026/4/6」なら、結果は「2026-W15」です。 TEXT関数で2桁表記にしておくと、ソート時に正しい順番になりますよ。

TODAY関数で「今日は第何週?」を自動更新

TODAY関数と組み合わせれば、今日のISO週番号が常に最新になります。

="今週はW"&ISOWEEKNUM(TODAY())

ファイルを開くたびに自動更新されます。 進捗管理シートに入れておくと便利ですよ。

よくあるエラーと対処法

ISOWEEKNUM関数で発生しやすいエラーは2つです。

エラー原因対処法
#VALUE!日付として認識できない値を指定したセルの値が正しい日付形式か確認する。文字列の日付はDATEVALUE関数で変換する
#NUM!シリアル値が負の数になっている1900/1/1より前の日付は指定できません。引数の日付を確認してください

「#VALUE!」が出る場合、見た目は日付でも中身が文字列のケースが多いです。 セルを選択して数式バーを確認してみてください。 数値なら右寄せ、文字列なら左寄せで表示されますよ。

ISOWEEKNUM関数とWEEKNUM関数の違い

ISOWEEKNUM関数とWEEKNUM関数は、どちらも週番号を返す関数です。 しかし「第1週の決め方」と「引数の数」が異なります。

比較表

項目ISOWEEKNUM関数WEEKNUM関数
第1週の基準最初の木曜日を含む週(ISO 8601)1月1日を含む週(既定)
週の始まり月曜日で固定第2引数で選べる(10種類)
引数の数1つ(日付のみ)2つ(日付, 週の基準)
戻り値の範囲1〜531〜54

WEEKNUM(日付, 21)ISOWEEKNUM(日付) は同じ結果です。 ISO方式なら、引数1つで済むISOWEEKNUM関数がシンプルですよ。

年末年始で結果が変わる具体例

違いがはっきり出るのは年末年始の日付です。 2026年1月1日(木曜日)で比較してみましょう。

=WEEKNUM("2026/1/1", 2)

結果: 1(2026年の第1週)

=ISOWEEKNUM("2026/1/1")

結果: 1(2026年の第1週)

この日は木曜日なので、どちらも第1週で一致します。 では、2025年12月29日(月曜日)ではどうでしょうか。

=WEEKNUM("2025/12/29", 2)

結果: 53(2025年の第53週)

=ISOWEEKNUM("2025/12/29")

結果: 1(2026年の第1週として扱われる)

WEEKNUM関数は「1月1日を含む週が第1週」なので、年末でも当年の週番号です。 一方、ISOWEEKNUM関数はISO規格に基づいて判定します。 2026年の最初の木曜日(1月1日)を含む週が第1週です。 その結果、12月29日は翌年の第1週に振り分けられるわけです。

どちらを使うべきか

使い分けの目安はこちらです。

  • 海外拠点との連携・ISO準拠が求められる場合: ISOWEEKNUM関数を使います。ヨーロッパのビジネスではISO週番号が標準です
  • 社内の週次レポート・集計: WEEKNUM関数がおすすめ。「1月1日=第1週」のほうが直感的で説明しやすいです
  • 年末年始をまたぐ集計: どちらを使うか事前に決めて統一しましょう。混在すると集計がズレる原因になります

迷ったら、国際基準に合わせるならISOWEEKNUM関数、社内用ならWEEKNUM関数と覚えておくとよいですよ。

まとめ

ISOWEEKNUM関数は、ISO 8601規格に基づいた週番号を日付から取得できる関数です。

  • 基本構文: =ISOWEEKNUM(日付) ── 引数は1つだけでシンプル
  • 週の始まりは月曜日固定、最初の木曜日を含む週が第1週
  • 年末年始の日付は翌年の第1週に振り分けられることがある点に注意
  • WEEKNUM関数との違いは「第1週の決め方」。ISO準拠ならISOWEEKNUM関数がおすすめ

海外拠点との連携やISO準拠の週次レポートに、ぜひ活用してみてください。 WORKDAY関数WEEKDAY関数と組み合わせれば、日付まわりの業務をさらに自動化できますよ。

この記事で紹介した関数

Excel関数リファレンス

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