Avatar billede jensen363 Forsker
10. oktober 2008 - 15:24 Der er 7 kommentarer og
1 løsning

Beregn antal dage i hver måned

Jeg har følgende datasæt :

Reservationsnummer
Sæson
Indflytningsdato
Antal dage

For en given sæson skal jeg gerne i en pivot/krydstabulering have optalt antallet af dage pr. måned.

Eksempel :

Reservationsnummer  1000
Sæson              2008
Indflytningsdato    30-08-2008
Antal dage          7

Løsning

Nr    Sæson  Aug  Sep
1000  2008    2    5

eller noget lignende
Avatar billede mugs Novice
10. oktober 2008 - 15:46 #1
Resterende antal dage i en måned ud fra en given dato.

Private Sub Kommandoknap5_Click()
Dim D As Integer, M As Integer, Y As Integer
If IsNull(restmåned) Then
lastofmonth = Null
Else
D = Day(Indflytningsdato)
M = Month(Indflytningsdato)
Y = Year(Indflytningsdato)
lastofmonth = DateAdd("m", 1, DateSerial(Y, M, 1)) - 1
MsgBox DateDiff("d", Indflytningsdato, lastofmonth) + 1
End If
End Sub
Avatar billede jensen363 Forsker
10. oktober 2008 - 15:55 #2
Hej Mugs

Hvordan fungerer det i en krydstabulering ?
Avatar billede mugs Novice
10. oktober 2008 - 16:02 #3
Du skal lige tilrette den og sende resultaterne ind i tabellen. Denne skulle fungere, idet den separerer asntal dage i felterne dennemåned og næstemåned, derefter smider den redterende antal overnatninger ind i feltet udflytning:

Private Sub Kommandoknap5_Click()
Dim D As Integer, M As Integer, Y As Integer
Dim næstemåned As Long, dennemåned As Long
If IsNull(restmåned) Then
lastofmonth = Null
Else
D = Day(restmåned)
M = Month(restmåned)
Y = Year(restmåned)
lastofmonth = DateAdd("m", 1, DateSerial(Y, M, 1)) - 1
dennemåned = DateDiff("d", restmåned, lastofmonth) + 1
End If
næstemåned = antal - dennemåned
udflytning = DateAdd("d", næstemåned, lastofmonth)
End Sub

Jeg kan sende dig db.
Avatar billede jensen363 Forsker
10. oktober 2008 - 16:07 #4
Det må du gerne :

Lasse.jensen snabelA Novasol.com
Avatar billede mugs Novice
10. oktober 2008 - 16:40 #5
Sendt.
Avatar billede jensen363 Forsker
12. oktober 2008 - 09:39 #6
Hej Mugs

Tak for tilsendte, det er ikke lige det jeg efterspørger. Jeg kender indflytningsdato og antal dage på forhånd, men har behov for en beregning af antal dage i måneden/månederne hvis abtallet af dage strækker sig hen over månedsskifte/flere måneder ... det kan jeg ikke lige gennemskue
Avatar billede jensen363 Forsker
15. oktober 2008 - 19:31 #7
Fandt denne løsning :

unction DaysInMonth(StartDate As Date, EndDate As Date, Month As Integer) As Integer

Dim RunningDate As Long
DaysInMonth = 0
If EndDate > StartDate Then
    RunningDate = StartDate
    Do While RunningDate <= EndDate
        If DatePart("m", RunningDate) = Month Then
            DaysInMonth = DaysInMonth + 1
        End If
        RunningDate = RunningDate + 1
    Loop
End If

End Function
Avatar billede jensen363 Forsker
16. oktober 2008 - 09:43 #8
Lukker
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