Avatar billede fastwrite Nybegynder
09. december 2001 - 03:56 Der er 4 kommentarer og
2 løsninger

Tælle antallet af dage i en måned

Hej. I access ønsker jeg at se hvor mange dage der er tilbage i fx. december måned. Den værdi der kommer ud af det skal jeg bruge i en beregning af gennemsnit pr. dag.

Men spg. er hvad skal jeg skrive i min ubundet tekstfelt på min formular?
Avatar billede terry Ekspert
09. december 2001 - 09:53 #1
The following example uses the DateSerial function together with the Year, Month, and Day functions to return the number of days in a month. You can pass either a date or a string to the DaysInMonth function.

Function DaysInMonth(dteInput As Date) As Integer
    Dim intDays As Integer

    \' Add one month, subtract dates to find difference.
    intDays = DateSerial(Year(dteInput), Month(dteInput) + 1, Day(dteInput)) _
        - DateSerial(Year(dteInput), Month(dteInput), Day(dteInput))
    DaysInMonth = intDays
    Debug.Print intDays
End Function

The following Sub procedure shows several different ways that you might call the DaysInMonth function.

Sub CallDaysInMonth()
    Dim intDays As Integer
    intDays = DaysInMonth(#4/1/96#)
    intDays = DaysInMonth(\"4-1-96\")
    intDays = DaysInMonth(\"April 1, 1996\")
End Sub
Avatar billede terry Ekspert
09. december 2001 - 09:54 #2
think it works!
Avatar billede nih Novice
09. december 2001 - 22:02 #3
Her er en anden løsning:

Function dagImnd(Adato As Date) As Integer

Dim dato As Date
\' sidste Dag i måneden:
dato = DateSerial(year(Adato), Month(Adato) + 1, 0)
dagImnd = day(dato)

End Function

Det viser sig at hvis man sætter dagparameteren til 0, returneres sidste dato i sidste Måned.

Sæt enten min eller Terry\'s function i et modul, og du kan kalde dem fra hele din database.

Niels
Avatar billede nih Novice
11. december 2001 - 22:05 #4
Hvordan går det fastwrite ???

Når du har kopieret funktionen ind i et modul kan du skrive sådan i et tekst felt:

    = 200/dagImnd(#01/01/01#)

    200 / 31  (Januar)

I en forespørgsel oprette et nyt felt:

  dage : dagImnd([datofelt])


Niels
Avatar billede fastwrite Nybegynder
12. december 2001 - 00:42 #5
Hej Terry og Nih. Det er lidt flovt men jeg har slet ikke haft tid til at tjekke det, men jeg er så sikker at I har tjek på tingene, at I får ligeligt point!

Jeg takker og bukker og ne.. øh - det er vist piger der nejer.

Mvh Fastwrite / Thomas
Avatar billede terry Ekspert
12. december 2001 - 09:08 #6
tak :o)
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