
GoogleスプレッドシートのWEEKNUM関数の使い方から、「月曜始まり」や「4月始まり」の設定方法を分かりやすく解説します。 年をまたいでも番号がズレない「通算週」の出し方も解説しているので、ぜひ参考にしてみてください。
WEEKNUM関数の使い方
WEEKNUM関数の基本

WEEKNUM関数は「その年の1月1日が含まれる週」を1として、その年の中で週番号を数えます。
例:=WEEKNUM(A2)
【ポイント】
- デフォルトでは「日曜始まり」として計算されます。
WEEKNUM関数の引数:(日付, [種類])
月曜始まりで週番号を計算する

月曜始まりで週番号を数えたい場合、第2引数の「種類」に「2」を指定します。
例:=WEEKNUM(A2,2)
【種類一覧】
- 1(省略時):日曜日を週の最初として、日~土を1週間として数えます。
- 2:月曜日を週の最初として、月~日を1週間として数えます。
- 11〜17(使わない):各曜日11(月)〜17(日)で始まりを指定します。
- 21: ISO方式(欧州などで使われる特殊な月曜始まりの数え方)。
開始月を指定して週番号を出す(4月始まり)

4月から数えた週数を計算したい場合、以下のような数式をオートフィルでコピーします。
例:=WEEKNUM(A2,2)-WEEKNUM(EOMONTH($A$2,-1)+1,2)+1
【ポイント】
2つ目のWEEKNUM関数の「日付」に、「数え始めたい日付」を指定します。例ではEOMONTH関数で、A2セルの月初日を自動計算しています。日付部分を直接指定すると、次のようになります。
- 4月始まり:
=WEEKNUM(A2,2)-WEEKNUM("2026/04/01",2)+1 - 5月始まり:
=WEEKNUM(A2,2)-WEEKNUM("2026/05/01",2)+1
EOMONTH関数の引数:(開始日, 月)
💡数式の解説
- WEEKNUM関数で取得できる「その日の週番号」から、常に「指定日の週番号」を引いて「1」を足すことで、その月の第1週目からカウントを始めます。
- 例:2026/4/2(14週)- 2026/4/1(14週)+ 1 = 1週目
- 例:2026/4/7(15週)- 2026/4/1(14週)+ 1 = 2週目
年をまたぐ時の週番号の出し方

1月1日でリセットせずに「通算第◯週」を出したい場合、以下のような数式を入力し、オートフィルでコピーします。
例:=DATEDIF("2024/12/30",A2-WEEKDAY(A2,3),"D")/7+1
【ポイント】
- DATEDIF関数の「開始日」には、数え始めたい週の「月曜日」の日付を指定します。
- 例:2025/1/1から数えたい場合、その週の月曜日に当たる「2024/12/30」を指定します。
💡数式の解説
WEEKDAY(A2,3): 月曜日を「0」として、その日が何曜日かを数値で返します。A2-WEEKDAY(A2,3):指定した日付から、その週の「月曜日」を計算します。- 例:2025/12/03(水) - 2日 = 2025/12/01(月)
- DATEDI関数:「開始日」から「終了日」までの日数を求め、それを「7(1週間)」で割ることで、週数を出します。
+1:「第1週」から数え始めるための調整。