Här är några användbara datumfunktioner:
[S:WeekStart]
Den här funktionen beräknar startdatumet för en vecka utifrån någon av dagarna i veckan. Den första parametern är datumet för någon av dagarna i veckan och den andra parametern är ett värde som representerar den första veckodagen.
Function WeekStart(datDate, lngFirstDayOfWeek)
WeekStart = DateAdd("d", 1 - DatePart("w", datDate, lngFirstDayOfWeek), datDate)
End Function
Exempel:
Den här veckan började: <%=WeekStart(Date(), vbMonday)%>
[S:MonthStart]
Den här funktionen beräknar startdatumet för en månad utifrån någon av dagarna i månaden.
Function MonthStart(datDate)
MonthStart = DateAdd("d", 1 - Day(datDate), datDate)
End Function
Exempel:
Den här månaden började: <%=MonthStart(Date())%>
[S:GetWeek]
Den här funktionen beräknar startdatumet för en vecka utifrån år och veckonummer. Den första parametern är året, den andra parametern är veckonumret, den tredje parametern representerar den första veckodagen och den fjärde parametern representerar metoden för att avgöra den första veckan på året.
Function GetWeek(lngYear, lngWeek, lngFirstDay, lngFirstWeek)
Dim datOffset
datOffset = DateSerial(lngYear, 2, 1)
GetWeek = DateAdd("d", 1 - WeekDay(datOffset, lngFirstDay), _
DateAdd("ww", lngWeek - DatePart("ww", datOffset, lngFirstDay, lngFirstWeek), datOffset))
End Function
Exempel:
Vecka 42 börjar: <%=GetWeek(Year(Date()), 42, vbMonday, vbFirstFourDays)%>