argumenten till dateserial blir
2002, 10, 0
0:e dagen i oktober tolkas som sista dagen i september
3 svar · 179 visningar · startad av doggelito
Varför felar funktionen på en månad?, skriver man dagens månad
(augusti) så printar den ut sista dagen i september fast den borde printa ut sista i oktober.
Private Function get_Lastmonthday(Current_date, Mathvalue)
Dim Current_day
If Len(Current_date) = 0 Or Not isDate(Current_date) Then
Current_date = Date()
Else
Current_date = CDate(Current_date)
End If
Current_day = Day(Dateserial(Year(Current_date), Month(Dateadd("M", Mathvalue, Current_date)), 1-1))
get_Lastmonthday = Current_day
End Function
response.Write get_Lastmonthday(Request.QueryString("Current_date"),+2)
argumenten till dateserial blir
2002, 10, 0
0:e dagen i oktober tolkas som sista dagen i september
Är du säker på det?
Den skriver ju ut 30 (i fallet september)
Är vbscript-tolken så smart alltså att om det är dag 0 så hoppar den tillbaka till sista dagen i föreg. månad, eller?
red// Borde functionen skrivas om eller?
Jag gjorde en liten justering på den, tack ändå!
Det där med 0 hade jag ingen aning om så då har man lärt sig nått nytt idag :)