Avatar billede dane022 Seniormester
19. april 2005 - 22:31 Der er 10 kommentarer og
1 løsning

Søgning både på dato fra og dato til

Jeg har i min tabel en masse poster, som jeg godt kunne tænke mig at søge på med dato som kriterie.
Søgningen er klar på flere andre felter hvor man søger direkte på kriteriet, men datoen driller mig fordi det både skal være fra og til datoen der skal kunne afgrænses på.
Det skal ydermere være sådan at hvis enten fra- eller til datoen efterlades blanke, så skal der søges ubegrænset frem eller tilbage i tiden.
Koden til søgning fra fra-dato er klar:
If Me!Datofra <> "" Then
SQLStr = SQLStr & "[dato] like '*" & Me!Datofra & "*' And "
End If

Til dato feltet hedder datotil
Avatar billede terry Ekspert
19. april 2005 - 22:48 #1
maybe something like
If Me!Datofra <> "" Then

SQLStr = SQLStr & "[dato] >= #" & cdate(Me!Datofra) & "# And "

End if

If Me!Datotil <> "" Then

SQLStr = SQLStr & "[dato] <= #" & Cdate(Me!DatoTil) & "# And "

End if
Avatar billede terry Ekspert
19. april 2005 - 22:48 #2
and you maye need to format the date fields

format(me!datotil, "yyyy-mm-dd")
Avatar billede dane022 Seniormester
19. april 2005 - 23:04 #3
Jeg glemte at skrive at dato felterne både indeholder dato og klokkeslæt, men jeg vil kun søge på datoerne.
Når jeg bruger dit eksempel så kommer alle posterne frem hvis jeg kun udfylder en af datoerne og ca. halvdelen kommer frem hvis jeg udfylder begge datoer.
Hvilken formattering skal jeg sætte feltet [dato] til ?
Avatar billede terry Ekspert
20. april 2005 - 07:52 #4
If Me!Datofra <> "" Then

SQLStr = SQLStr & "[dato] >= #" & format(me!datofra, "yyyy-mm-dd") & "# And "

End if

If Me!Datotil <> "" Then

SQLStr = SQLStr & "[dato] <= #" & format(me!datotil, "yyyy-mm-dd") & "# And "

End if
Avatar billede terry Ekspert
20. april 2005 - 07:58 #5
If the field in the dB is date+time
then try formatting the dato field in the same way
Avatar billede dane022 Seniormester
20. april 2005 - 17:29 #6
Det virker næsten. Eneste problem er at hvis datotil er f.eks. 1-4-05, så er det kun posterne før den dato der bliver medtaget.
Jeg vil have at også posterne med samme dato som datotil bliver medtaget.
Avatar billede terry Ekspert
20. april 2005 - 19:50 #7
make sure that you are using <= and >=
Avatar billede dane022 Seniormester
20. april 2005 - 20:00 #8
Jeg bruger præcis den kode du har skrevet
Avatar billede terry Ekspert
20. april 2005 - 20:07 #9
If you can send me your dB then maybe I can see what the problem is?
eksperten@NOSPAMsanthell.dk
remove NOSPAM

I am rather busy so I will look at it as soon as possible
Avatar billede dane022 Seniormester
20. april 2005 - 21:51 #10
Jeg har rettet koden til:
If Me!datotil <> "" Then
SQLStr = SQLStr & "[dato] -1 <= #" & Format(Me!datotil, "yyyy-mm-dd") & "# And "
End If
og nu virker det, men du får stadig fuld point
Avatar billede terry Ekspert
21. april 2005 - 09:29 #11
thanks

it shouldnt be necessary to subtract a day from your dato fields, but if thats what works then great
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester