月の第何週目か求めたい

指定した日付がその月の第何週目か求めたいのですが、どのように求めれば良いですか?

指定した日付の1日から、昨日、一昨日と遡って、日曜日となる日付を求めます。
曜日は、 DateTime.DayOfWeekで求められます。
曜日の結果で、日曜日は、DayOfWeek.Sundayですね。
日付を遡らせるのは、 DateTime.AddDays(-1)で求められます。

その日付と、指定した日付の日差を7で割って、その(商+1)がその月の第何週目になるのでは?

と、頭の中で考えてみました。

1 Like

DatePart関数より、当該日の年間の週番号がとれますので、その数値から当月1日の週番号を引いたものが求める週番号となると思われます。

具体的には以下です。

DatePart(“WW”, [日付型変数], vbSunday) - DatePart(“WW”, DateSerial(Year([日付型変数]), Month([日付型変数]), 1), vbSunday) + 1

"WW"は週番号を取得するという設定
vbSundayは日曜日の番号。
※今回、日曜日スタートのカレンダーとしています。月曜日スタートの場合はvbSundayの部分をvbMondayに変更してご使用下さい。

2 Likes

ありがとうございました。

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.