Avatar billede nyholm Novice
23. november 2006 - 14:29 Der er 4 kommentarer og
1 løsning

Finna sista dagen i månaden

Från ett datum i fæltet "Datum" vill jag finna sista dagen i den månaden, som skall visas i fæltet "SistaDag".
Hur kan koden se ut?
Avatar billede ffsoft Praktikant
23. november 2006 - 14:43 #1
Du finder den første i måneden efter og trækker 1 fra

datNaesteFoerste = cdate("01-" & intMaaned + 1 & "-2006")
SidsteDagIMaaned = dateadd("d",-1,datNaesteFoerste)
Avatar billede jensen363 Forsker
23. november 2006 - 17:21 #2
Hvis du ud af et større datasæt ønsker af finde sidste registreringsdato i hver måned, som ikke nødvendigvis er det samme som ovenstående løsning, kan denne SQL gøre arbejdet :

SELECT Format([Datum],"mm") AS Maaned, Last(Tabel1.Datum) AS SidstaDag
FROM Tabel1
GROUP BY Format([Datum],"mm");
Avatar billede nyholm Novice
23. november 2006 - 21:38 #3
Oavsett datum skall koden ge den sista dagen i månaden.
Om datum ær #2005-05-16# skall koden ge #2005-05-31#.
Avatar billede ffsoft Praktikant
24. november 2006 - 10:05 #4
Function FindFoersteDag(Dato As Date) As Date
Dim intAar As Integer, intMaaned As Integer
intAar = Year(Dato)
intMaaned = Month(Dato)
FindFoersteDag = CDate("01-" & intMaaned + 1 & "-" & intAar)
FindFoersteDag = DateAdd("d", -1, FindFoersteDag)
End Function

Kald fra Access:

Dim datDato As Date
datDato = FindFoersteDag(#10/16/2006#)
End Sub
Avatar billede ffsoft Praktikant
24. november 2006 - 20:31 #5
FindFoersteDag = CDate("01-" & intMaaned + 1 & "-" & intAar)

der skal selvfølgelig osse bruges dateadd() for at lægge en
måned til ellers vil det gå galt i december

FindFoersteDag = CDate("01-" & dateadd("m",1,intMaaned) & "-" & intAar)
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