En vecka kan tillhöra flera månader.
Nu står det still. Hur får man enklast fram vilken månad en viss vecka tillhör?
8 svar · 720 visningar · startad av mattiasnordin
Nu står det still. Hur får man enklast fram vilken månad en viss vecka tillhör?
En vecka kan tillhöra flera månader.
Nja, är fyra dagar i en viss månad så får man väl se det som att den tillhör den månaden.
Eller rättare sagt så att torsdagen säger vilken månad veckan tillhör.
Det här bör funka:
Function WeekMonth(ByVal lYear, ByVal lWeek)
Dim dFirstWeek, dThursday
dFirstWeek = DateSerial(lYear, 1, 4)
dThursday = DateAdd("d", -3 - Weekday(dFirstWeek, vbMonday), dFirstWeek)
dThursday = DateAdd("ww", lWeek, dThursday)
WeekMonth = Month(dThursday)
End Function
Jag får den inte att räkna fel. Vad snyggt. Jag hade själv påbörjat en funktion men då jag hade 33 rader mer kod så känns det som att Eriks eminenta lösning får duga istället...
Bra jobbat !
hmmm.... månad 6 och månad 9 blir lite konstiga. De får 5 veckor i var... (22, 23, 24, 25, 26)
Vad är det för konstigt med det?
HEJ!
mattiasnordin skrev:
hmmm.... månad 6 och månad 9 blir lite konstiga. De får 5 veckor i var... (22, 23, 24, 25, 26)
Ja? Har inte din almanacka det då, min har. ;)
Mars och december har också fem minst fyra-dagars-veckor.
Jag misstänker att du lurar dig själv på något vis, beroende på hur du fördelar de 30/31 dagar dagar som finns i en månad kan den få fem vecko-nummer.
Ni har helt rätt mina eminenta herrar. Jag bugar för er kunskap :stud