Veckonummer med Excel: En guide till ISOVECKONR och VECKONR-funktionerna
VECKONR (WEEKNUM) och ISOVECKONR (ISOWEEKNUM) är två funktioner i Excel som används för att ta reda på veckonummer för ett visst datum. Skillnaden mellan de två funktionerna är att ISOVECKONR enbart returnerar med veckonummer enligt ISO 8601 (det system vi har i Sverige) medan man med VECKONR kan ändra returtyp för passa till andra veckonummersystem.
ISOVECKONR är en nyare funktion som introducerades med Excel 2013 (så de flesta bör ha denna funktion). Jag fokuserar därför här främst på funktionen ISOVECKONR (men visar även hur VECKONR kan användas).
Vad gör Excel-funktionen ISOVECKONR?
ISOWEEKNUM-funktionen i Excel är en tid- och datumfunktion som används för att ta reda på veckonumret enligt ISO 8601 (en standard som specificerar hur veckor och datum ska hanteras) för det angivna datumet. Funktionen infördes i MS Excel 2013.
Syntax
= ISOVECKONR(datum)
datum: Datum måste vara ett korrekt datumformat enligt Excels datumserieformat. (se mer om dette i min andra post om hur Excel räknar med datum och tid). Enklast är att bara referera till en cell med ett datum.
Denna funktion kommer att returnera ett nummer mellan 1 och 52 (och i vissa fall även 53), som specificerar i vilken vecka datumet faller. Längre ner i denna post så går jag in mer i detalj kring hur veckonummersystemet är kontruerat och t.ex. när vecka 53 uppstår och vid vilket datum som vecka 1 börjar (det är inte som många tror…).
Hur använder man ISOVECKONR?
Exempel1:
Skriv in ett datum i en cell (t.ex. A1): 2023-01-19
I en annan cell skriver du in funktionen ISOVECKONR(A1)
Resultatet av detta blir: 3. Dvs den 19:e januari 2023 är veckonummer 3.
Exempel 2:
Funktionen går också att kombinera med andra funktioner. Om du t.ex. skriver in funktionen:
=ISOVECKONR(IDAG()) så kommer du få aktuellt veckonummer för det datum som är idag.
Exempel 3
Ett problem som kan krångla till det är att det går inte att skriva in ett datum direkt i funktionen. Du kan t.ex. inte skriva ISOVECKONR(2023-01-19).
För att funktionen skall fungera så måste datumet vara ett korrekt datumserieformat. Excel lagrar datum i ett datumseriesystem. Det representerar dagarna från 1 januari 1900. Så 1 januari 1900 skulle vara serienumret 1 och 1 januari 2023 skulle vara 44927, eftersom det är 44927dagar efter 1 januari 1900. (Notera dock att detta gäller för Excel för Windows, har du en macintoish-dator så börjar serienummer 1 vid 1904-01-02 (se min andra blogpost för mer om detta).
Så vill du skriva in ett datum direkt i funktionen så måste du antingen ange serienumret för det datumet, 44945 är serienumret för 2023-01-19. Skriver du funktionen ISOVECKONR(44945) får du ett korrekt veckonummer för det datumet.
Men detta är inte direkt praktiskt. För att ta reda på vad ett serienummer är för ett visst datum så kan du skriva in datumet i en cell i Excel och sedan ändra talformatet till ett vanligt talformat.
Det enklaste alternativet är att lägga in funktionen DATUM i ISOVECKONR.
Excels DATUM-funktion används för att skapa ett datum från argumenten År, Månad och Dag. Funktionen returnerar ett korrekt datumserienummer som kan användas i andra tid- och datumfunktioner.
Så om du skriver följande:
=ISOVECKONR(DATUM(2013;1;19))
Så kommer du också få svaret: Vecka nummer 3.
Ett annat alternativ om du vill skriva in datumet direkt i funktionen är att använda funktionen TEXT och specificera datumformatet:
=ISOVECKONR(TEXT(”2023-01-19″;”ÅÅÅÅ-MM-DD”))
Funktionen TEXT i Excel är en formateringsfunktion som används för att formatera ett tal eller ett datum till en textsträng med ett specifikt format. Funktionen tar två argument, det tal eller datum som ska formateras och det format som ska användas för formatering.
Till exempel, om man vill formatera ett datum som ”yyyy-mm-dd” kan man använda funktionen TEXT som ”=TEXT(A1,”yyyy-mm-dd”)” där A1 är cellen som innehåller datumet. Detta kommer att returnera datumet som en textsträng med formatet ”yyyy-mm-dd”, t.ex. ”2022-12-31”.
Vad gör funktionen VECKONR (WEEKNUM)?
Funktionen VECKONR gör samma sak som ISOVECKONR med de skillnaden att man kan har ett argument (returtyp) där man anger vilken standard som man skall följa för att beräkna veckonummer.
Syntax
VECKONR(tal;[returtyp])
tal: Ett obligatoriskt argument. Det är ett datum som specificerar veckan. Datumet kan anges med hjälp av DATUM-funktionen eller som resultatet av andra formler eller funktioner. Exempel: Använd DATUM(2023, 5, 23) för att specificera datumet den 23 maj 2023.
returtyp: Ett tal som representerar vilket datumsystem som skall användas. För Sverige (ISO 8601) bör man använda returtyp 21. Utelämnas detta som antas returtyp 1 (som följer USA-standard bland annat innebär att veckan börjar på söndag – se mer om detta nedan).
=VECKONR(A1;21) ger vecknumret enligt ISO 8601 för det datum som finns i cell A1.
Man kan också ange datum med DATUM-funktionen eller som resultat av andra formler eller funktioner. Använd t.ex. DATUM(2023;1;1) för 1 januari 2023.
Olika system i olika länder
Det finns flera andra returtyper som är anpassade för länder och regioner som följer andra system.
Det här med vecknummer är inte enkel och man bör vara medveten om att ett visst veckonummer i Sverige inte behöver vara samma nummer i USA eller något annat land.
Exempel på förvirringen med veckonummer i olika länder
Lördag den 31 december 2022 är i Sverige (enligt ISO8601) vecka nummer 52. Men är i USA (returtyp 1) vecka nummer 53. I USA blir sedan nästa dag, söndag den 1 januari 2023, den första dagen i vecka nummer 1 medan vi i Sverige fortfarande är på vecka 52. I Sverige börjar sedan vecka 1 på måndag den 2:a januari 2023. Men samtidigt som vi startar vår vecka 1 så finns de länder (returtyp 2)som växlar över till vecka 2 samma dag…
Jag tänkte därför avsluta denna post med en mer allmän beskrivning av vad veckonummer är för någonting och hur den kan beräknas.
Vad är veckonummer egentligen?
Veckonummer är ett vanligt sätt att hålla reda på veckorna inom ett år och är en viktig del av tidshanteringen i vissa länder. Dessa nummer är tilldelade en vecka och hjälper till att identifiera specifika veckor för olika syften såsom planering, rapportering och redovisning.
Veckonummer används främst i Europa och Asien, men är inte lika vanliga i USA och andra länder. Enligt standarden ISO 8601, som är den vanligaste standarden (och den som Sverige följer) för att beräkna veckonummer, börjar veckan på måndag. Standarden beskriver också sättet att numrera veckorna inom ett år. Vecka 1 är den första veckan på året som innehåller minst 4 av årets dagar.
Andra sätt att uttrycka samma sak är att den vecka som innehåller den första torsdagen på året är vecka 1 eller att vecka 1 är veckan där 4 januari ligger.
En annan viktig del av ISO 8601 standarden är hur man hanterar vecka 53. Om vecka 52 slutar före den 28 december tillkommer en extra vecka som kallas vecka 53, som då räknas in i det nya året. Detta är annorlunda jämfört med tidigare metoder där vecka 53 endast tillkom om vecka 52 slutade före 31 december, men detta veckonummer vandrade inte över till det nya året. Detta innebar att samma vecka fick två olika veckonummer. Genom att tillkomma vecka 53 även om vecka 52 slutar tidigare, så blir veckonumren korrekta och ingen vecka blir utelämnad.
En viktig sak att notera när det gäller veckonummer är att det kan påverkas av vilken dag veckan börjar. Som jag nämnde tidigare så börjar veckan på måndag enligt ISO 8601-standarden, men det finns andra standarder och returtyper som tillåter veckan att börja på en annan dag än måndag.
Det är därför viktigt att välja rätt returtyp (för funktionen VECKONR) eller standard för veckonummer beroende på vad som är vanligt i det specifika landet eller regionen. Att använda fel returtyp eller standard kan leda till missförstånd och felaktiga resultat.
Det är också viktigt att komma ihåg att veckonummer kan påverkas av vilken dag veckan börjar när man arbetar med datum och tid. Om man exempelvis har en tabell där veckonumren baseras på en annan standard än den som används i det specifika landet eller regionen, kan det leda till felaktiga resultat när man försöker sammanställa data eller göra jämförelser.
Det är därför viktigt att vara medveten om vilken standard eller returtyp som används för veckonummer och att välja rätt en för att undvika missförstånd och få korrekta resultat. Det är också viktigt att vara medveten om det kan påverkas av vilken dag veckan börjar och att välja rätt standard och returtyp för det specifika landet eller regionen.
Se min film som visar hur man använder VECKONR och ISOVECKONR
I den här filmen visar jag hur man använder VECKONR och ISOVECKONR för att visa korrekt veckonummer. Filmen innehåller även ett bonustips där jag visar hur man gör om ett datum så att det visar veckodag (t.ex. så att det istället för 2023-01-01 visas ”söndag”).