Innholdsfortegnelse
Mens Microsoft Excel tilbyr en rekke funksjoner for å jobbe med ukedager, måneder og år, er bare én tilgjengelig i flere uker - WEEKNUM-funksjonen. Så hvis du leter etter en måte å få et ukenummer fra en dato, er WEEKNUM funksjonen du ønsker.
I denne korte opplæringen vil vi kort snakke om syntaksen og argumentene til Excel WEEKNUM, og diskuter deretter noen formeleksempler som viser hvordan du kan bruke UKENUM-funksjonen til å beregne uketall i Excel-regnearkene dine.
Excel UKENUMMER-funksjonen - syntaks
UKENUMMER-funksjonen er brukes i Excel for å returnere ukenummeret til en bestemt dato i året (et tall mellom 1 og 54). Den har to argumenter, det første er obligatorisk og det andre er valgfritt:
UKENUMMER(serienummer, [return_type])- Serienummer - hvilken som helst dato i uken hvis nummer du prøver å finne. Dette kan være en referanse til en celle som inneholder datoen, en dato angitt ved å bruke DATO-funksjonen eller returnert av en annen formel.
- Return_type (valgfritt) - et tall som bestemmer hvilken dag uken begynner. Hvis den utelates, brukes standardtype 1 (uken som begynner på søndag).
Her er en fullstendig liste over return_type
-verdiene som støttes i WEEKNUM-formler.
Return_type | Uken begynner på |
1 eller 17 eller utelatt | søndag |
2 eller11 | Mandag |
12 | Tirsdag |
13 | Onsdag |
14 | Torsdag |
15 | Fredag |
16 | Lørdag |
21 | Mandag (brukt i System 2, se detaljene nedenfor.) |
I UKENUMMER-funksjonen brukes to forskjellige ukenummersystemer :
- System 1. Uken som inneholder 1. januar vurderes den 1. uken i året og er nummerert uke 1. I dette systemet starter uken tradisjonelt på søndag.
- System 2. Dette er ISO-ukedatosystemet som er en del av ISO 8601 dato og klokkeslett standard. I dette systemet starter uken på mandag, og uken som inneholder den første torsdagen i året regnes som uke 1. Det er vanligvis kjent som det europeiske ukenummereringssystemet, og det brukes hovedsakelig i myndigheter og næringsliv for regnskapsår og tidtaking.
Alle returtypene oppført ovenfor gjelder for System 1, bortsett fra returtype 21 som brukes i System 2.
Merk. I Excel 2007 og tidligere versjoner er kun alternativene 1 og 2 tilgjengelige. Returtypene 11 til 21 støttes kun i Excel 2010 og Excel 2013.
Excel WEEKNUM-formler for å konvertere dato til ukenummer (fra 1 til 54)
Følgende skjermbilde viser hvordan du kan få ukenummer fra datoer med den enkleste =WEEKNUM(A2)
-formelen:
I ovenståendeformelen, er return_type
-argumentet utelatt, noe som betyr at standardtype 1 brukes - uken som begynner på søndag.
Hvis du heller vil begynne med en annen ukedag, si mandag, så bruk 2 i det andre argumentet:
=WEEKNUM(A2, 2)
I stedet for å referere til en celle, kan du spesifisere datoen direkte i formelen ved å bruke funksjonen DATE(år, måned, dag), for eksempel:
=WEEKNUM(DATE(2015,4,15), 2)
Formelen ovenfor returnerer 16, som er nummeret på uken som inneholder 15. april 2015, med en uke som begynner på mandag.
I virkelige scenarier , Excel WEEKNUM-funksjonen brukes sjelden alene. Oftest vil du bruke den i kombinasjon med andre funksjoner for å utføre ulike beregninger basert på ukenummeret, som vist i ytterligere eksempler.
Hvordan konvertere ukenummer til dato i Excel
Som du har nettopp sett, er det ikke så farlig å gjøre om en dato til et ukenummer ved å bruke Excel WEEKNUM-funksjonen. Men hva om du ser etter det motsatte, det vil si å konvertere et ukenummer til en dato? Akk, det er ingen Excel-funksjon som kan gjøre dette med en gang. Så vi må konstruere våre egne formler.
Anta at du har et år i celle A2 og et ukenummer i B2, og nå vil du beregne start- og sluttdatoene i denne uken.
Merk. Dette formeleksemplet er basert på ISO-uketall, med en uke som starter på mandag.
Formelen for å returnere Startdato i uken er som følger:
=DATE(A2, 1, -2) - WEEKDAY(DATE(A2, 1, 3)) + B2 * 7
Hvor A2 er året og B2 er ukenummeret.
Vær oppmerksom på at formelen returnerer datoen som et serienummer, og for å få det vist som en dato, må du formatere cellen tilsvarende. Du finner de detaljerte instruksjonene i Endre datoformat i Excel. Og her er resultatet returnert av formelen:
Selvfølgelig er formelen for å konvertere et ukenummer til en dato ikke triviell, og det kan ta en stund å få hodet rundt logikken. Uansett, jeg skal gjøre mitt beste for å gi meningsfull forklaring for de som er nysgjerrige på å komme ned til bunnen.
Som du ser, består formelen vår av 2 deler:
-
DATE(A2, 1, -2) - WEEKDAY(DATE(A2, 1, 3))
- beregner datoen for siste mandag i året før. -
B2 * 7
- legger til antall uker multiplisert med 7 (antall dager i en uke) for å få mandag (startdato) i uken i spørsmål.
I ISO-ukenummereringssystemet er uke 1 uken som inneholder den første torsdagen i året. Følgelig er den første mandagen alltid mellom 29. desember og 4. januar. Så for å finne den datoen må vi finne mandagen rett før 5. januar.
I Microsoft Excel kan du trekke ut en ukedag fra en dato ved å bruke WEEKDAY-funksjonen. Og du kan bruke følgende generiske formel for å få mandag rett før en gitt dato:
= dato - UKEDAG( dato - 2)Hvis vårDet endelige målet var å finne mandag umiddelbart før 5. januar i året i A2, vi kunne bruke følgende DATE-funksjoner:
=DATE(A2,1,5) - WEEKDAY(DATE(A2,1,3))
Men det vi faktisk trenger er ikke den første mandagen i i år, men heller siste mandag i året før. Så du må trekke fra 7 dager fra 5. januar og dermed får du -2 i den første DATO-funksjonen:
=DATE(A2,1,-2) - WEEKDAY(DATE(A2,1,3))
Sammenlignet med den vanskelige formelen du nettopp har lært, beregner du Ukens sluttdato er en piece of cake :) For å få søndag i den aktuelle uken legger du bare til 6 dager til Startdatoen , dvs. =D2+6
Alternativt kan du legge til 6 direkte i formelen:
=DATE(A2, 1, -2) - WEEKDAY(DATE(A2, 1, 3)) + B2 * 7 + 6
For å sikre at formlene alltid leverer de riktige datoene, vennligst ta en titt på følgende skjermbilde. Formlene for startdato og sluttdato som er diskutert ovenfor, kopieres over henholdsvis kolonne D og E:
Andre måter å konvertere ukenummer til dato i Excel
Hvis formelen ovenfor basert på ISO-ukedatosystemet ikke oppfyller kravene dine, prøv en av følgende løsninger.
Formel 1. En uke som inneholder jan-1 er uke 1, man-søn uke
Som du husker fungerer den forrige formelen basert på ISO-datosystemet der første torsdag i året regnes som uke 1. Hvis du jobber basert på et datosystem der uken som inneholder 1. januar regnes som uke 1, bruk følgendeformler:
Startdato:
=DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),2) + (B2-1)*7 + 1
Sluttdato:
=DATE(A2,1,1)- WEEKDAY(DATE(A2,1,1),2) + B2*7
Formel 2. En uke som inneholder Jan-1 er uke 1, søn-lør uke
Disse formlene ligner på de ovennevnte med den eneste forskjellen at de er skrevet for søndag - lørdag uke.
Startdato:
=DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),1) + (B2-1)*7 + 1
Sluttdato:
=DATE(A2,1,1)- WEEKDAY(DATE(A2,1,1),1) + B2*7
Formel 3. Begynn alltid å telle 1. januar, man-søn uke
Mens de forrige formlene returnerer mandag (eller søndag) i uke 1, uansett av om hvis faller innenfor dette året eller det foregående året, returnerer denne startdatoformelen alltid 1. januar som startdatoen for uke 1 uavhengig av ukedagen. I analogi gir sluttdatoformelen alltid 31.desember som sluttdatoen for den siste uken i året, uavhengig av ukedagen. I alle andre henseender fungerer disse formlene på samme måte som formel 1 ovenfor.
Startdato:
=MAX(DATE(A2,1,1), DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),2) + (B2-1)*7 + 1)
Sluttdato:
=MIN(DATE(A2+1,1,0), DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),2) + B2*7)
Formel 4. Begynn alltid å telle 1. januar, søn-lør uke
For å beregne start- og sluttdatoene for en søndag - lørdag uke er alt som skal til en liten justering i formlene ovenfor :)
Startdato:
=MAX(DATE(A2,1,1), DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),1) + (B2-1)*7 + 1)
Sluttdato:
=MIN(DATE(A2+1,1,0), DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),1) + B2*7)
Hvordan få måned fra ukenummer
For å få en måned som tilsvarer uken nummer, finner du den første dagen i en gitt uke som forklart i denneeksempel, og pakk deretter formelen inn i Excel MONTH-funksjonen slik:
=MONTH(DATE(A2, 1, -2) - WEEKDAY(DATE(A2, 1, 3)) + B2 * 7)
Merk. Husk at formelen ovenfor fungerer basert på ISO-ukedatosystemet , der uken starter på mandag og uken som inneholder den første torsdagen i året regnes som uke 1. For eksempel, i år 2016, første torsdag er 7. januar, og derfor begynner uke 1 4. jan-2016.
Hvordan få et ukenummer i løpet av en måned (fra 1 til 6)
Hvis forretningslogikken din krever å konvertere en spesifikk dato til ukenummeret i den tilsvarende måneden, kan du bruke kombinasjonen WEEKNUM, DATE- og MONTH-funksjoner:
Forutsatt at celle A2 inneholder den opprinnelige datoen, bruk følgende formel for en uke som begynner på mandag (merknad 21 i WEEKNUMs returtype-argument):
=WEEKNUM($A2,21)-WEEKNUM(DATE(YEAR($A2), MONTH($A2),1),21)+1
I en uke som begynner på søndag , utelate argumentet return_type:
=WEEKNUM($A2)-WEEKNUM(DATE(YEAR($A2), MONTH($A2),1))+1
Hvordan summer verdier og finn gjennomsnitt etter ukenummer
Nå som du vet hvordan du konverterer en dato til et ukenummer i Excel, la oss se hvordan du kan bruke ukenummer i andre beregninger.
Anta , du har noen månedlige salgstall og du vil vite totalen for hver uke.
Til å begynne med, la oss finne ut et ukenummer som tilsvarer hvert salg. Hvis datoene dine er i kolonne A og salg i kolonne B, kopierer du =WEEKNUM(A2)
-formelen over kolonne C som begynner i cellenC2.
Og deretter, lag en liste over ukenummer i en annen kolonne (f.eks. i kolonne E) og beregn salget for hver uke ved å bruke følgende SUMIF-formel:
=SUMIF($C$2:$C$15, $E2, $B$2:$B$15)
Hvor E2 er ukenummeret.
I dette eksempelet jobber vi med en liste over marssalg, så vi har ukenummer 10 til 14, som vist i følgende skjermbilde:
På lignende måte kan du beregne salgsgjennomsnittet for en gitt uke:
=AVERAGEIF($C$2:$C$15, $E2, $B$2:$B$15)
Hvis hjelpekolonnen med WEEKNUM-formelen ikke passer godt inn i dataoppsettet ditt, beklager jeg å fortelle deg at det ikke er noen enkel måte å bli kvitt den på fordi Excel WEEKNUM er en av disse funksjonene som ikke aksepterer rekkeviddeargumenter. Derfor kan den ikke brukes innenfor SUMPRODUCT eller noen annen matriseformel som MONTH-funksjonen i et lignende scenario.
Hvordan markere celler basert på ukenummeret
La oss si at du har en lang liste av datoer i en kolonne, og du vil bare fremheve de som er relatert til en gitt uke. Alt du trenger er en betinget formateringsregel med en WEEKNUM-formel som ligner på denne:
=WEEKNUM($A2)=10
Som vist i skjermbildet nedenfor, fremhever regelen salg som ble gjort innen uke 10, som er første uke i mars 2015. Siden regelen gjelder for A2:B15, fremhever den verdier i begge kolonnene. Du kan lære mer om hvordan du oppretter regler for betinget formatering i denneopplæring: Excel betinget formatering basert på en annen celleverdi.
Slik kan du beregne ukenummer i Excel, konvertere ukenummer til dato og trekke ut ukenummer fra dato. Forhåpentligvis vil WEEKNUM-formlene du har lært i dag vise seg nyttige i regnearkene dine. I den neste opplæringen skal vi snakke om å beregne alder og år i Excel. Jeg takker for at du leser og håper å se deg neste uke!