vbscript asp - Найти каждый четверг в данном месяце - PullRequest
2 голосов
/ 31 августа 2011

Я пытаюсь найти все четверги в течение данного месяца, используя VBScript.

Может кто-нибудь помочь?

Ответы [ 2 ]

5 голосов
/ 31 августа 2011

Вот один из способов;

base_date = cdate("21 aug 2011")

'get 1st thursday;
thurs = dateserial(year(base_date), month(base_date), 1)
if (weekday(thurs) <> 1) then thurs = 5 - weekday(thurs) + thurs

'loop subsequent;
do until month(thurs) <> month(base_date)
    msgbox thurs
    thurs = dateadd("d", 7, thurs)
loop
0 голосов
/ 22 марта 2016

Хотя принятый ответ выполняет работу, он слишком сложен для чего-то, что может быть достигнуто с помощью функции WeekDay() и цикла For.

Dim day
Dim startdate: startdate = CDate("21 aug 2011")
Dim enddate
'Get first day of month.
startdate = DateSerial(Year(startdate), Month(startdate), 1)
'Get last day of month.
enddate = DateAdd("m", 1, startdate) - 1
For day = startdate To enddate
  If WeekDay(day) = vbThursday Then WScript.Echo day & " = " & WeekDayName(WeekDay(day))
Next

Выход:

04/08/2011 = Thursday
11/08/2011 = Thursday
18/08/2011 = Thursday
25/08/2011 = Thursday

Любая Постоянная даты и времени может использоваться здесь для поиска различных или нескольких дней недели с небольшим изменением.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...