webForumDet fria alternativet

DateDiff i MS Access

3 svar · 423 visningar · startad av LR^evil.sid

LR^evil.sidMedlem sedan maj 2002552 inlägg
#1

Tjena!

Följande kod verkar inte skapa ett riktigt datum för datediff att jämnföra mot kontrolldatumet. Ser ni vad som är fel?

" AND DateDiff('d',Mid(fk.pnr,1,2)-Mid(fk.pnr,3,2)-Mid(fk.pnr,5,2),'"&ControlDate&"') > 1825 AND DateDiff('d',Mid(fk.pnr,1,2)-Mid(fk.pnr,3,2)-Mid(fk.pnr,5,2),'"&ControlDate&"') < 3651"

Controldate = Date()-Round(20*365.2575)
fk.pnr = 790506

LaspMedlem sedan juli 200010 197 inlägg
#2

Vad skall du kontrollera mellan 5 och 10 år?

LR^evil.sidMedlem sedan maj 2002552 inlägg
#3

Jag skall redovisa posterna beroende på hur gamla personerna är som svarat på en speciell undersökning.

Dim ArrAge(7): ArrAge(0) = ""
               ArrAge(1) = " AND DateDiff('d','"&ControlDate&"',CDate(Mid(fk.pnr,1,2)-Mid(fk.pnr,3,2)-Mid(fk.pnr,5,2))) <  365"
               ArrAge(2) = " AND DateDiff('d','"&ControlDate&"',CDate(Mid(fk.pnr,1,2)-Mid(fk.pnr,3,2)-Mid(fk.pnr,5,2))) >  364 AND DateDiff('d','"&ControlDate&"',CDate(Mid(fk.pnr,1,2)-Mid(fk.pnr,3,2)-Mid(fk.pnr,5,2))) < 1826"
               ArrAge(3) = " AND DateDiff('d','"&ControlDate&"',CDate(Mid(fk.pnr,1,2)-Mid(fk.pnr,3,2)-Mid(fk.pnr,5,2))) > 1825 AND DateDiff('d','"&ControlDate&"',CDate(Mid(fk.pnr,1,2)-Mid(fk.pnr,3,2)-Mid(fk.pnr,5,2))) < 3651"
               ArrAge(4) = " AND DateDiff('d','"&ControlDate&"',CDate(Mid(fk.pnr,1,2)-Mid(fk.pnr,3,2)-Mid(fk.pnr,5,2))) > 3650 AND DateDiff('d','"&ControlDate&"',CDate(Mid(fk.pnr,1,2)-Mid(fk.pnr,3,2)-Mid(fk.pnr,5,2))) < 5476"
               ArrAge(5) = " AND DateDiff('d','"&ControlDate&"',CDate(Mid(fk.pnr,1,2)-Mid(fk.pnr,3,2)-Mid(fk.pnr,5,2))) > 5475 AND DateDiff('d','"&ControlDate&"',CDate(Mid(fk.pnr,1,2)-Mid(fk.pnr,3,2)-Mid(fk.pnr,5,2))) < 7301"
               ArrAge(6) = " AND DateDiff('d','"&ControlDate&"',CDate(Mid(fk.pnr,1,2)-Mid(fk.pnr,3,2)-Mid(fk.pnr,5,2))) > 7300 AND DateDiff('d','"&ControlDate&"',CDate(Mid(fk.pnr,1,2)-Mid(fk.pnr,3,2)-Mid(fk.pnr,5,2))) < 9126"
               ArrAge(7) = " AND DateDiff('d','"&ControlDate&"',CDate(Mid(fk.pnr,1,2)-Mid(fk.pnr,3,2)-Mid(fk.pnr,5,2))) > 9125"
@ndersMedlem sedan juni 200026 914 inlägg
#4

Jag skulle verkligen rekommendera dig att lagra datum i fält av rätt datatyp. Då skulle du ju slippa allt detta krångel...

Genererad på 379 ms · cache AV · v20260730165559-full.f96bc7eb