Jag har sökt efter ett svar på det här och kollat upp bla. Datediff() på MSDN, men får inte till det alls.
Jag vill få ut namnet på den månad som var för fyra månader sen.
Skulle vilja uppnå detta genom tex. en funktion. Skulle man köra det här idag, skulle svaret vara "Maj".
Det är ett annat problem, vill få ut svaret i formatet "Januari", "Februari" osv.
Har kommit såhär (långt):
month(date) - 4
Det ger resultatet "5", vilket är "Maj". Problemet är att jag inte lyckats få ut namnet på månaden.
Gjorde även ett tappert försök till en funktion:
Function gDate(strDate)
Manaden = month(strDate - 4)
Select Case Manaden
Case 1 : ReManaden="Januari"
Case 2 : ReManaden="Februari"
Case 3 : ReManaden="Mars"
Case 4 : ReManaden="April"
Case 5 : ReManaden="Maj"
Case 6 : ReManaden="Juni"
Case 7 : ReManaden="Juli"
Case 8 : ReManaden="Augusti"
Case 9 : ReManaden="September"
Case 10 : ReManaden="Oktober"
Case 11 : ReManaden="November"
Case 12 : ReManaden="December"
End Select
gDate = ReManaden
End Function
Problemet är att den skriver ut "September", vilket är fel.
Funktionen borde returnera "Maj", men jag har förmodligen gjort något fel i den.
Function gDate(d)
Manaden = (month(d) - 4)
Select Case Manaden
Case 1 : ReManaden="Januari"
Case 2 : ReManaden="Februari"
Case 3 : ReManaden="Mars"
Case 4 : ReManaden="April"
Case 5 : ReManaden="Maj"
Case 6 : ReManaden="Juni"
Case 7 : ReManaden="Juli"
Case 8 : ReManaden="Augusti"
Case 9 : ReManaden="September"
Case 10 : ReManaden="Oktober"
Case 11 : ReManaden="November"
Case 12 : ReManaden="December"
End Select
gDate = ReManaden
End Function
Kallar på den med:
<%=gDate(date)%>
Så du @nders menar att den här koden inte kommer funka "året om"?
/r Aha, skickar jag med Januari som datum, blir det som du säger, ja just det.
Hmm, har du lust att dra ett exempel på hur du menar?
Ska även kolla upp vad DevGuru säger.
HeHe, har gjort om min kod efter vad jag läst på DevGuru och kommit fram till precis samma sak, har bytt ut Manaden = (month(d) - 4) till Manaden = Month(DateAdd("m", -4, d)).
Nu funkar det bra och kommer förmodligen göra det oavsett vilken månad det är.
Kom på en grejj jag måste tillägga.
Om det är så att aktuell månad är ex. "Februari", blir således fyra månader tidigare "Oktober".
Om jag nu vill ha med årtal i funktionen ovan, hur ska jag göra då? För då ska "Oktober" i mitt fall ha år 2003 och "Februari" ska ha 2004.
Vad ska jag lägga till för att få till den sista biten?