Avatar billede bjarnehansen Seniormester
11. september 2010 - 12:48 Der er 16 kommentarer og
1 løsning

finde første dato i en uge

Hej

kan man ikke finde første dato i en uge ud fra ugenr og årstal samt den sidste dato i en uge ud fra uge nr og årstal skal bruges til at danne en periode oversigt som deler årte op i 13 perioder a 4 uger 1 periode starter altid den 1/1 og periode 13 slutter altid den 31/12 så den første og sidste periode får nogle forskellige antal dage mens de andre alle har 28 dage.
Avatar billede vejmand Juniormester
11. september 2010 - 12:53 #1
Avatar billede bjarnehansen Seniormester
11. september 2010 - 14:14 #2
ok men den er ikke helt med på.
jeg har periode nr i a6 - a18 første uge nr i b6 - b18 anden uge nr i c6 -c18 først dato i d6 - d18 sidste dato i e6 -e18 antal dage i periode i f6-f18 ssmt årstalet i f5 hvad skal man så bruge for at finde sidste dato i uge 4 ? samt første dato i uge 5?
Avatar billede vejmand Juniormester
11. september 2010 - 15:15 #3
Hmm, det er jo lidt specielt, da året ikke altid starter med uge 1
F.eks. starter uge 1 i år d. 4/1

Hvilke dato vil du starte og hvilken dato vil du slutte?
Hvis du vil bruge sidste dato uge 4 (31/1-2010) får du jo 31 dage i første periode..........

Feks giver følgende formel første dag uge 4 (25/1-2010)
=DATO(F$5;1;0)+(B7*7)-6+HVIS(UGE.NR(DATO(F$5;1;1))>=52;8-UGEDAG(DATO(F$5;1;1);2);-UGEDAG(DATO(F$5;1;1);2)+1)
Avatar billede bjarnehansen Seniormester
12. september 2010 - 01:53 #4
jeg vil i første periode altid starte med den 1/1 og slutte med søndagen i uge 4 - anden periode vil så være første dag i uge 5 og slutte med sidste dag i uge 8 - 3 periode starter så første dag i uge 9 og slutter med sidste dag i uge 12 o.s.v periode 13 slutter altid med den 31/12

jeg har 13 periode på et år - jeg ved godt at den første periode og den sidste periode nr 13 de får mere end 28 dage samt periode 2 i skud år den må også få mere end 28 dage
Avatar billede JonathanW Nybegynder
12. september 2010 - 06:31 #5
Piece of cake.

Jeg har ikke en formel til det, men ved brug af en kalender-tabel du selv laver og LOPSLAG til den,  kan det gøres meget let og virksomt.

For 2011:

Dato  Dag    Periode

01.01. Lørdag    1
...
...
...
30.01. Søndag    1
31.01. Mandag    2
...
...
...
27.02. Søndag    2
28.02. Mandag    3

etc.

Hvis du er usikker på det, kan jeg lave det for dig på ca. 10 minutter og maile den til dig. I givet fald skal du fortælle mig hvornår det skal starte fra.

OG - lukke spørgsmålet bagefter. Det skriver jeg fordi alt for mange herinde bare smutter, til frustration for de seriøse folk.





Jeg gør det gerne for dig, hvis det har din interesse.
Avatar billede vejmand Juniormester
12. september 2010 - 06:42 #6
Okay, så skal du bruge formlen fra linket, hvor funktionen iWeek bruges.
Jeg har desværre ikke erfaring med at indsætte en sådan funktion, men det er måden at gøre det på.

Formlen til at finde sidste dato uge 4
=DATO(F5;1;0)+(C6*7)-6+HVIS(iWeek(DATO(F5;1;1))>=52;8-UGEDAG(DATO(F5;1;1);2);-UGEDAG(DATO(F5;1;1);2)+1)+6

Formlen til at finde første dag uge 5
=DATO(F5;1;0)+(B7*7)-6+HVIS(iWeek(DATO(F5;1;1))>=52;8-UGEDAG(DATO(F5;1;1);2);-UGEDAG(DATO(F5;1;1);2)+1)

Men det kræver funktionen som er beskrevet i linket:

Function iWeek(InputDate As Long) As Integer
Dim A As Integer, B As Integer, C As Long, D As Integer
iWeek = 0
If InputDate < 1 Then Exit Function
A = Weekday(InputDate, vbMonday)
B = Year(InputDate + ((8 - A) Mod 7) - 3)
C = DateSerial(B, 1, 1) '1. januar ÅR(inputdate)
D = (Weekday(C, vbSunday) + 1) Mod 7
iWeek = Int((InputDate - C - 3 + D) / 7) + 1
End Function


Det har jeg som sagt ingen erfaring med at indsætte....
Avatar billede vejmand Juniormester
12. september 2010 - 06:43 #7
Sorry, fik ikke lige opdateret inden jeg sendte min kommentar.....
Avatar billede bjarnehansen Seniormester
12. september 2010 - 08:54 #8
ok i f5 skal der stå en dato eller bare et årstal?
Avatar billede bjarnehansen Seniormester
12. september 2010 - 09:51 #9
hej har næsten fået det til at virke men den får sidste dag i uge 4 til at 24/1 skal være 31/1 og den får første dag i uge 5 til at være 25/1 skal væe 1/2 men i 2011 og 2012 passer det såvidt jeg kan se ?

jeg roder også lige med at finde en formel sætter første dag i periode 1 til at være 1/1 + årstalet som jeg taster ind i e5?
Avatar billede bjarnehansen Seniormester
12. september 2010 - 11:05 #10
det er ikke altid at man kan se det der ligger lige for en har fundet ud af det den 1/1 og 31/12 skulle jo bruge =DATO():-)
Avatar billede bjarnehansen Seniormester
12. september 2010 - 11:06 #11
Hej vejmand kan jeg sende arket til dig så du kan se på det ang. de forkerte dato i 2010?
Avatar billede vejmand Juniormester
12. september 2010 - 16:48 #12
Tror ikke det hjælper, da jeg som sagt ikke har erfaring med at indsætte den funktion som skal bruges for at Excel accepterer iWeek.

Men jeg vil da godt se på det, jeg sender dig en personlig besked med min e-mail adresse.
Avatar billede vejmand Juniormester
13. september 2010 - 07:21 #13
Jeg har nu set på den tilsendte fil. Som jeg ser det, har du lavet det efter beskrivelsen i linket, og dog virker det stadig ikke.
Jeg kan desværre ikke gennemskue hvorfor, håber der kommer en mere kyndig forbi spørgsmålet......

Der er nogle rigtig skrappe Excel-hajer herinde, mon ikke én af dem kommer forbi.  :-)
Avatar billede bjarnehansen Seniormester
13. september 2010 - 09:29 #14
ok tak for hjælpen indtil nu, så må vi vente og se om der er en der kan hjælpe med en formel til at finde den først dato i en uge ud fra uge nr og årstallet og med en formel til at finde den sidste dato i enuge ud fra ugenr og årstallet.
Avatar billede vejmand Juniormester
13. september 2010 - 10:03 #15
Jeg har prøvet at lave det med en formel uden iWeek funktionen, jeg tror det virker, men er ikke helt sikker.

Prøv selv at tjekke div. årstal.......

Sidste dag uge 4
=HVIS(UGE.NR(DATO(E$5;1;1))<>1;DATO(E$5;1;0)+(C6*7)-6+HVIS(UGE.NR(DATO(E$5;1;1))>=52;8-UGEDAG(DATO(E$5;1;1);2);-UGEDAG(DATO(E$5;1;1);2)+1)+6;DATO(E$5;1;0)+(C6*7)-6+HVIS(UGE.NR(DATO(E$5;1;1))>=52;8-UGEDAG(DATO(E$5;1;1);2);-UGEDAG(DATO(E$5;1;1);2)+1)+13)
Første dag uge 5
=HVIS(UGE.NR(DATO(E$5;1;1))<>1;DATO(E$5;1;0)+((B7)*7)-6+HVIS(UGE.NR(DATO(E$5;1;1))>=52;8-UGEDAG(DATO(E$5;1;1);2);-UGEDAG(DATO(E$5;1;1);2)+1);DATO(E$5;1;0)+((B7)*7)-6+HVIS(UGE.NR(DATO(E$5;1;1))>=52;8-UGEDAG(DATO(E$5;1;1);2);-UGEDAG(DATO(E$5;1;1);2)+8))

Det er ikke så kønt, men jeg tror det virker.  :-)
Avatar billede bjarnehansen Seniormester
14. september 2010 - 11:26 #16
her er hvad jeg har fundet frem til
sidste dag i uge 4
=HVIS(UGEDAG(DATO(E$5;1;0);2)=7;DATO(E$5;1;0)+(C7*7);DATO(E$5;1;0)+(C7*7)-6+HVIS(AFKORT((DATO(E$5;1;0)-UGEDAG(DATO(E$5;1;0);2)-DATO(ÅR(DATO(E$5;1;0)+4-UGEDAG(DATO(E$5;1;0);2));1;-10))/7)>=52;8-UGEDAG(DATO(E$5;1;1);2);-UGEDAG(DATO(E$5;1;1);2)+1)+6)

første dag i uge 5
=HVIS(UGEDAG(DATO(E$5;1;0);2)=7;DATO(E$5;1;0)+(B7*7)-6;DATO(E$5;1;0)+((B7)*7)-6+HVIS(AFKORT((DATO(E$5;1;0)-UGEDAG(DATO(E$5;1;0);2)-DATO(ÅR(DATO(E$5;1;0)+4-UGEDAG(DATO(E$5;1;0);2));1;-10))/7)>=52;8-UGEDAG(DATO(E$5;1;1);2);-UGEDAG(DATO(E$5;1;1);2)+1))

vejmand send et svar for point tak for hjælp og input
Avatar billede vejmand Juniormester
14. september 2010 - 13:10 #17
Velbekomme, godt du fik det til at funke.  :-)

Egentlig lidt utroligt der ikke er en funktion i Excel som kan finde uge nr. ud fra Europæisk standard....det ville godt nok ha hjulpet lidt her.
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
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

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