2012-08-05 3 views
0

Weekday에서 Now까지 얼마나 오랜 시간이 있는지 알고 싶습니다. 나는 어디에서나 검색했지만 실제로 아무것도 찾을 수 없습니다.평일이나 날짜까지의 시간은 어떻게됩니까?

나는 어쨌든 WeekDay 함수와 함께 DateDiff 함수를 사용해야한다고 생각합니다.

시나리오는 다음과 같습니다

나는 주 전 날과 변수 varWeekDay을 가지고 : 1/2/3/4/5/7분의 6

그리고 또 다른 변수 varStartTime 하루의 시간 : HH : MM

그리고 하루의 시간도 마지막 변수 varStopTime : HH : MM

if varWeekday = Weekday(now, 2) and varStartTime < formatdatetime(now, 4) then 
    .... Write how long time till start in hours/minutes 
elseif varWeekday = Weekday(now, 2) and varStartTime >= formatdatetime(now, 4) and varStopTime < formatdatetime(now, 4) then 
    response.write("Already started!") 
else 
    .... Write how long time till start in days/hours/minutes 
end if 

"시간 길이"는 "지금부터 2 일, 3 시간 27 분"이 될 수 있습니다.

동일한 출력이 특정 datetime에서 생성되어야합니다. 예 : 06/08/2012 23:55는 "지금부터 1 일 13 분"입니다

정말 도움을 줄 수 있기를 바랍니다. :)

답변

1

시작 시간과 종료 시간에 필요한 내용을 완전히 이해하지 못했지만이 스크립트는 현재와 특정 요일의 시작 사이에 얼마나 많은 시간이 있는지 알려줍니다.

<% 
Dim varNow : varNow = Now() 
Dim varWeekday : varWeekday = 7 'This is the weekday to look for (1 is Sunday, 7 is Saturday) 

'This next line sets the time to the start of the day 
Dim varThisDate : varThisDate = DateSerial(Year(varNow), Month(varNow), Day(varNow)) 
Dim varThisWeekday 
Do 
    varThisDate = DateAdd("d", 1, varThisDate) 
    varThisWeekday = Weekday(varThisDate) 
    If varThisWeekday = varWeekday Then 
     Exit Do 
    End If 
Loop 

'These next lines just convert and display the remaining time into the different units 
Response.Write("Until next " & WeekdayName(varWeekday) & "<br />") 

Dim varSeconds : varSeconds = DateDiff("s", varNow, varThisDate) 
Dim varDays : varDays = Int(varSeconds/60/60/24) 
varSeconds = varSeconds - (varDays * 24 * 60 * 60) 
Dim varHours : varHours = Int(varSeconds/60/60) 
varSeconds = varSeconds - (varHours * 60 * 60) 
Dim varMinutes : varMinutes = Int(varSeconds/60) 
varSeconds = varSeconds - (varMinutes * 60) 

Response.Write("Days: " & varDays & "<br />") 
Response.Write("Hours: " & varHours & "<br />") 
Response.Write("Minutes: " & varMinutes & "<br />") 
Response.Write("Seconds: " & varSeconds & "<br />") 
%> 
+0

늦게 답장을 드려 죄송합니다. 내 프로젝트에 약간의 조정을 한 후에도 매력적이었습니다. :) 답변은 훌륭합니다! – Behrens