ちょっと生きづらさを抱えた人へ、気持ちを楽にするためのお手紙です。

【VBA】次の月曜日・火曜日・水曜日・木曜日・金曜日・土曜日・日曜日を求める

筆箱にカンニングペーパーを入れる係のみすくです。こんにちは。
VBA関連だけまとめたブログもあります。
筆箱VBA
Weekday
何曜日であるかを表す 1 (日曜) ~ 7 (土曜) の範囲の値を返します。
Weekday(date, [firstdayofweek])
 
引数
date
 日付を表す式を指定します。
 引数 date が有効な値ではない場合は、Null 値を返します。
firstdayofweek
 週の第 1 日目の曜日を表す定数を指定します。
 この値を省略すると、1 (日曜) が使用されます。

Weekday関数の第2引数を指定し、
求めたい曜日が週の始まりになるようにずらして、
基準日とその週までの差分を求めて計算しています。

例えば、第2引数にvbMondayを指定すると、
第1引数の日付が月曜日の場合1、日曜日が7返却されます。
7日間(1週間)からWeekdayの返却値を引けば、
週末までの日数がわかります。

基準日にその日数を足して、その次の日が求めたい曜日の日。

参考 Weekday 関数MSDN

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください