webForumDet fria alternativet

Datum

6 svar · 240 visningar · startad av martinpartin

martinpartinMedlem sedan jan. 2001373 inlägg
#1

Hej,

Håller på att göra en lista över inköpta datorer Access/ASP.
Sedan vill jag att saker som är mer än 3 år gamla blir röd-markerade. Jag har givetvis ett inköpsdatum 2000-01-01.

Någon som har den bästa lösningen ?

alltså bara rödmarkerings-funktionen..

Mvh

Jesper TMedlem sedan nov. 20017 144 inlägg
#2

Testa något liknande:

myDate="2000-01-01"
if datediff("y",myDate,date) > 2 then 
Response.write "<font color="red">"& myDate &"</font>"
else
Response.write "<font color="black">"& myDate &"</font>"
end if
SkarreMedlem sedan apr. 20012 427 inlägg
#3

Är inte "y" i DateDiff "day of year"? Nåväl, här är ett annat exempel:

If buydate < DateAdd("yyyy", -3, Date()) Then
	'...markera röd
End If
Jesper TMedlem sedan nov. 20017 144 inlägg
#4

Ok, det kanske skall vara "yyyy".

Engine^Medlem sedan dec. 20003 887 inlägg
#5

Jag skulle nog inte heller använda mig av DateDiff()... Nåväl, här kommer ett tredje exempel.

If DateSerial(Year(Date) - 3), Month(Date), Day(Date)) >= dteWasBought Then
  Response.Write "<font color=""black"">" & dteWasBought & "</font>"
Else
  Response.Write "<font color=""red"">" & dteWasBought & "</font>"
End If
SkarreMedlem sedan apr. 20012 427 inlägg
#6

Engine^ skrev:

Jag skulle nog inte heller använda mig av DateDiff()...

Är det en personlig preferens eller finns det någon grund för det?

Engine^Medlem sedan dec. 20003 887 inlägg
#7

Jag tänkte att det kan bli fel, eftersom skillnaden på två årtal inte måste innebära att det är så många år som gått mellan två olika datum.

DateDiff("yyyy", #2002-12-31#, #2003-01-01#) = 1, men det är bara en dag mellan dom två datumen...

254 ms totalt · 3 externa anrop · v20260731065814-full.30151723
136 ms — hämta forumlista (db)
116 ms — hämta statistik (db)
126 ms — hämta tråd, inlägg och bilagor (db)