#navi(../)
* 指定した日付の曜日を取得する方法・WeekDay関数 [#za6fa069]
WeekDay関数を利用すると指定した日付の曜日を取得することができます。

#contents
#htmlinsertpcsp(win-top.html,win-sp.html)

* 関連資料 [#lbbfcd17]
-[[ロケールIDの取得・GetLoacle>WSH/ロケールIDの取得・GetLoacle]]
-[[ロケール設定による挙動の変化・SetLocale>WSH/ロケール設定による挙動の変化・SetLocale]]
-[[年月日時分秒のパートを抜き出す・DatePart>WSH/年月日時分秒のパートを抜き出す・DatePart]]
-[[日付けの加算や減算を行う・DateAdd>WSH/日付けの加算や減算を行う・DateAdd]]
-[[VBScriptで2つの日付の引き算(時間間隔)をする方法・DateDiff>WSH/2つの日付の引き算(時間間隔)をする方法・DateDiff]]

* WeekDay関数の書式 [#o7195510]
WeekDay関数の書式は以下のようになります。

 Weekday(date, [firstdayofweek])

- date - 年月日を指定
- firstdayofweek - 週の第 1 日目の曜日を表す定数を指定。(''省略可能'' 省略時は日曜が指定される。)

* WeekDay関数を使用したVBScriptサンプルコードと実行結果 [#p584ab10]
以下にWeekDay関数を使用したサンプルコードと実行結果を記します。

** WeekDay関数のサンプルコード [#r8c4dea4]
#ref(WeekDay.vbs)
 n = Now
 WScript.Echo "Now = " & n
 WScript.Echo "WeekDay(n) = " & WeekDay(n)
 WScript.Echo "WeekdayName(WeekDay(n), True) = " & WeekdayName(WeekDay(n), True)
 WScript.Echo "WeekdayName(WeekDay(n), False) = " & WeekdayName(WeekDay(n), False)
 
 dt = "2012/7/1"
 WScript.Echo "dt = " & dt
 WScript.Echo "WeekDay(dt) = " & WeekDay(dt)
 WScript.Echo "WeekdayName(WeekDay(dt), True) = " & WeekdayName(WeekDay(dt), True)
 WScript.Echo "WeekdayName(WeekDay(dt), False) = " & WeekdayName(WeekDay(dt), False)


** WeekDay関数サンプルコードの実行結果 [#zd144c38]
WeekDayに日付を引数にし実行すると曜日が値として返却されるのが確認できます。

 C:\wsh>cscript /nologo WeekDay.vbs
 Now = 2012/07/20 0:19:50
 WeekDay(n) = 6
 WeekdayName(WeekDay(n), True) = 金
 WeekdayName(WeekDay(n), False) = 金曜日
 dt = 2012/7/1
 WeekDay(dt) = 1
 WeekdayName(WeekDay(dt), True) = 日
 WeekdayName(WeekDay(dt), False) = 日曜日

WeekDayの返却値は以下の通りです。
|''定数''|''値''|''内容''|
|vbSunday|1|日曜|
|vbMonday|2|月曜|
|vbTuesday|3|火曜|
|vbWednesday|4|水曜|
|vbThursday|5|木曜|
|vbFriday|6|金曜|
|vbSaturday|7|土曜|

ロケールに従い、曜日の名前を表示するには、WeekdayName関数を使用します。~
最後のTrue, Falseは短い表記と長い表記になります。

#htmlinsertpcsp(win-btm.html,win-sp.html)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS