VBScript: 曜日を取得する Weekday(), WeekdayName()

VBScriptで曜日の情報を取得したい場合は、 Weekday()関数を使用します。

Weekday()関数では1(日曜日)から7(土曜日)までの数値を取得でき、 その数値を元に「日曜日」などの文字列を取得したい場合は WeekdayName()関数も使用できます。

Weekday()関数で曜日を取得する

書式
Weekday(日付)

Weekday関数は引数として日付を指定し、 戻り値として1から7までの数値を戻します。
1が日曜日で2が月曜日、7が土曜日です。

次のサンプルコードでは、 Weekday()関数を使って今日の曜日の情報を取得し、表示しています。
下のコードのように配列として曜日の文字列を持つ場合、 Weekday関数の戻り値から1を引く必要があります。

arr = Array("Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat")

n = Weekday(Date()) - 1

WScript.Echo arr(n)

WeekdayName()関数で曜日を文字列として取得する

上のサンプルコードでは配列に曜日の文字列情報を持っていましたが、 WeekdayName()関数を使っても文字列として取得できます。 書式は次の通りです。

書式
WeekdayName(曜日, 曜日の表示)

使い方はサンプルコードを見た方が早いと思いますので記述します。

WScript.Echo WeekdayName(1)        ' 日曜日
WScript.Echo WeekdayName(2, True)  ' 月

第1引数に曜日(数値)を指定し、 第2引数に "曜日" という文字列を表示するかどうかを指定します。 デフォルト(False)では表示され、Trueを指定すると表示されません。

次のサンプルコードでは、まずWeekday関数で曜日(数値)を取得し、 曜日(数値)をもとに WeekdayName関数で曜日(文字列)を取得・表示しています。

n = Weekday(Date())

WScript.Echo n               ' 3

WScript.Echo WeekdayName(n)  ' 火曜日
VBScript入門