最近、週を計算する必要があり、インターネットで既製のコードを見ましたが、適切ではなかったので、自分で計算する必要がありました。
デフォルトでは、年の最初の月曜日が最初の週として始まります。
'特定の年の最初の週の開始日を計算します
関数 firstday(入力年)
for i=cdate(inputyear&"-1-1") to cdate(inputyear&"-1-7")
平日(i)=2の場合
初日=私
のために出る
終了する場合
次
終了関数
'入力された日付はその年の週の関数として計算されます
FunctionCalcWeekNo(入力日付)
toyear=年(入力日付)
fday=初日(今年)
if datediff("d",fday,inputdate)<0 then
fday=firstday(toyear-1)
終了する場合
'calcweekno=fday
daynum=datediff("d",fday,inputdate)
calcweekno=int(曜日/7)+1
終了関数
'週番号と年に基づいて週の最初の曜日を計算します
関数 getfst(入力年,週番号)
fday=firstday(入力年)
getfst=dateadd("d",(weekno-1)*7,fday)
終了関数