Avatar billede barin998dk Nybegynder
11. februar 2005 - 11:02 Der er 8 kommentarer og
1 løsning

Ugenummer - igen

Jeg har med stor iver fulgt med i de tråde, som har omhandlet ugenummer-problematikken...

Jeg vil ikke afvise at jeg har overset svaret i kampens hede, men jeg har stadig ikke set en konkret formel, som kunne angive ugenummeret for en vilkårlig dato.

Der skal naturligvis tages hensyn til om et år har 53 uger (Altså hvis 1. januar falder på en fredag, lørdag eller søndag).

Jeg var nået ret langt med en formel selv - indtil jeg opdagede at år 2000 begyndte på en lørdag - og i uge 1, hvilket kuldsejlede teorien om fre, lør og søn giver 53 uger...

Har nogen et bedre forslag til at afgøre ugenummeret til en vilkårlig dato?
Avatar billede jkrons Professor
11. februar 2005 - 11:10 #1
I min kalender var uge 1 i år 2000 den uge, der begyndte mandag den 3. januar præcis som det skal være "efter bogen", nemlig den uge, der indeholder årets første torsdag. Så de metoder, der sætter første 4-dages uge til at være uge 1, virker altså også i år 2000.
Avatar billede jkrons Professor
11. februar 2005 - 11:12 #2
For god ordens skyld bør jeg måske sige, at lørdag og søndag IKKe var uge 53, men derimod afslutningen af uge 52. Netop fordi 1999 startede med en uge 53 blev uge 52 ikke helt færdig inden året var gået.
Avatar billede barin998dk Nybegynder
11. februar 2005 - 11:28 #3
OK... Jeg havde vist blandet to problemstillinger sammen. Hvornår begynder året (ugemæssigt) - og det var så korrekt regnet ud - og så 53-ugers-problemet...

Så begyndelsen på året er på plads, men hvad er så reglen for, om der er 53 uger? Det er så åbenbart det springende punkt!
Avatar billede jkrons Professor
11. februar 2005 - 11:50 #4
REgler er rimeligt klar. Den første uge med fire dage, eller oversat: Den uge med den første torsdag.

Den sikreste måde er agt lave din egen ugenummerfunktion (eller kopiere en andens).

Her et et forslag tilm, hvordan det kan gøres:

Function Ugenum(InputDate As Date)
    Ugenum = DatePart("ww", InputDate, vbMonday, vbFirstFourDays)
End Function
Avatar billede barin998dk Nybegynder
11. februar 2005 - 11:57 #5
Vil den tage højde for de 53 uger?
Avatar billede jkrons Professor
11. februar 2005 - 12:07 #6
Jeps! 1-1-1999 bliver uge 53, 1-1-200 bliver uge 52. 3-1-2000 bliver uge 1, 1-1-2005 bliver uge 53, 3-1-2005 bliver uge 1 osv.
Avatar billede barin998dk Nybegynder
11. februar 2005 - 12:10 #7
All Right... :-)

Kast et svar og modtag points som en ringe tak for at have reddet min dag...
Avatar billede jkrons Professor
11. februar 2005 - 12:24 #8
:-)
Avatar billede xelor Nybegynder
11. februar 2005 - 13:27 #9
Det skal dog lige siges at der er forskel på ugenummer beregningen i USA og resten af verden....

Forskellen er nemmest at se, hvis du aktiverer Excels Tilføjelsesprogram 'Analysis Toolpack', som indeholder en Uge-nummer funktion.
Så kan du sammenligne dine uge-tal for hhv. jkrons funktion og MS infbyggede funktion

Funktionen hedder UGE.NR(Dato) i dansk excel og WEEKNUM(date) i engelsk Excel.
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
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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