Sisällysluettelo
Microsoft Excel tarjoaa useita funktioita, joilla voidaan käsitellä viikonpäiviä, kuukausia ja vuosia, mutta viikkoja varten on käytettävissä vain yksi funktio - WEEKNUM-funktio. Jos siis etsit tapaa saada viikon numero päivämäärän perusteella, WEEKNUM on haluamasi funktio.
Tässä lyhyessä opetusohjelmassa kerromme lyhyesti Excelin WEEKNUM-toiminnon syntaksista ja argumenteista ja käsittelemme sitten muutamia kaavaesimerkkejä, jotka osoittavat, miten voit käyttää WEEKNUM-funktiota viikoittaisten lukujen laskemiseen Excel-taulukoissa.
Excel WEEKNUM-funktio - syntaksi
WEEKNUM-funktiota käytetään Excelissä palauttamaan tietyn päivämäärän viikkonumero (luku välillä 1-54). Sillä on kaksi argumenttia, joista ensimmäinen on pakollinen ja toinen valinnainen:
WEEKNUM(sarjanumero, [return_type])- Sarjanumero - mikä tahansa päivämäärä viikolla, jonka numeroa etsit. Tämä voi olla viittaus soluun, joka sisältää päivämäärän, päivämäärä, joka on syötetty DATE-toiminnolla tai joka on palautettu jollakin muulla kaavalla.
- Return_type (valinnainen) - numero, joka määrittää, minä päivänä viikko alkaa. Jos se jätetään pois, käytetään oletustyyppiä 1 (sunnuntaina alkava viikko).
Tässä on täydellinen luettelo return_type
WEEKNUM-kaavoissa tuetut arvot.
Return_type | Viikko alkaa |
1 tai 17 tai jätetty pois | Sunnuntai |
2 tai 11 | Maanantai |
12 | Tiistai |
13 | Keskiviikko |
14 | Torstai |
15 | Perjantai |
16 | Lauantai |
21 | Maanantai (käytetään järjestelmässä 2, katso lisätietoja jäljempänä). |
WEEKNUM-funktiossa on kaksi erilaista viikkonumerojärjestelmät käytetään:
- Järjestelmä 1. Tammikuun 1. päivän sisältävää viikkoa pidetään vuoden ensimmäisenä viikkona, ja se numeroidaan viikoksi 1. Tässä järjestelmässä viikko alkaa perinteisesti sunnuntaina.
- Järjestelmä 2. Tämä on ISO-viikkopäivämääräjärjestelmä, joka on osa ISO 8601 -päiväys- ja aikastandardia. Tässä järjestelmässä viikko alkaa maanantaina, ja vuoden ensimmäisen torstain sisältävää viikkoa pidetään viikkona 1. Järjestelmä tunnetaan yleisesti eurooppalaisena viikkonumerojärjestelmänä, ja sitä käytetään pääasiassa julkishallinnossa ja liike-elämässä verovuosiin ja ajanottoon.
Kaikki edellä luetellut palautustyypit koskevat järjestelmää 1 lukuun ottamatta palautustyyppiä 21, jota käytetään järjestelmässä 2.
Huomautus: Excel 2007:ssä ja aikaisemmissa versioissa käytettävissä ovat vain vaihtoehdot 1 ja 2. Palautustyypit 11-21 ovat tuettuja vain Excel 2010:ssä ja Excel 2013:ssa.
Excel WEEKNUM -kaavat päivämäärän muuntamiseksi viikon numeroksi (1-54)
Seuraavassa kuvakaappauksessa näytetään, miten päivämääristä voidaan saada viikon numerot yksinkertaisimmalla tavalla =WEEKNUM(A2)
kaava:
Yllä olevassa kaavassa return_type
argumentti jätetään pois, mikä tarkoittaa, että käytetään oletustyyppiä 1 - sunnuntaina alkava viikko.
Jos haluat mieluummin aloittaa jostain muusta viikonpäivästä, esimerkiksi maanantaista, käytä toisessa argumentissa arvoa 2:
=WEEKNUM(A2, 2)
Sen sijaan, että viittaisit soluun, voit määrittää päivämäärän suoraan kaavassa esimerkiksi käyttämällä DATE(year, month, day) -funktiota:
=WEEKNUM(DATE(2015,4,15), 2)
Yllä oleva kaava antaa tulokseksi 16, joka on 15. huhtikuuta 2015 sisältävän viikon numero, kun viikko alkaa maanantaina.
Todellisissa tilanteissa Excelin WEEKNUM-funktiota käytetään harvoin yksinään. Useimmiten sitä käytetään yhdessä muiden funktioiden kanssa erilaisten laskutoimitusten suorittamiseen viikon numeron perusteella, kuten seuraavissa esimerkeissä osoitetaan.
Kuinka muuntaa viikon numero päivämääräksi Excelissä
Kuten olet juuri nähnyt, päivämäärän muuttaminen viikkonumeroksi Excelin WEEKNUM-funktiolla ei ole suuri ongelma. Mutta entä jos etsit päinvastaista vaihtoehtoa, eli haluat muuttaa viikkonumeron päivämääräksi? Valitettavasti ei ole olemassa mitään Excel-funktiota, joka voisi tehdä tämän heti. Meidän on siis rakennettava omat kaavamme.
Oletetaan, että sinulla on vuosi solussa A2 ja viikon numero solussa B2, ja nyt haluat laskea alkamis- ja päättymispäivämäärät tällä viikolla.
Huomautus: Tämä kaavaesimerkki perustuu ISO-viikkonumeroihin, joissa viikko alkaa maanantaina.
Kaava, jolla palautetaan Aloituspäivä on seuraava:
=DATE(A2, 1, -2) - WEEKDAY(DATE(A2, 1, 3)) + B2 * 7
Jossa A2 on vuosi ja B2 on viikon numero.
Huomaa, että kaava palauttaa päivämäärän sarjanumerona, ja jotta se näytetään päivämääränä, sinun on muotoiltava solu vastaavasti. Yksityiskohtaiset ohjeet löydät kohdasta Päivämäärämuodon muuttaminen Excelissä. Ja tässä on kaavan palauttama tulos:
Tietenkään kaava, jolla viikkonumero muunnetaan päivämääräksi, ei ole triviaali, ja logiikan ymmärtäminen voi viedä jonkin aikaa. Teen kuitenkin parhaani antaakseni mielekkään selityksen niille, jotka haluavat päästä perille.
Kuten näet, kaava koostuu 2 osasta:
PÄIVÄMÄÄRÄ(A2, 1, -2) - VIIKONPÄIVÄ(PÄIVÄMÄÄRÄ(A2, 1, 3))
- laskee edellisen vuoden viimeisen maanantain päivämäärän.B2 * 7
- lisää viikkojen lukumäärän kerrottuna 7:llä (viikon päivien lukumäärä), jolloin saadaan kyseisen viikon maanantai (alkamispäivä).
ISO-viikkonumerojärjestelmässä viikko 1 on viikko, joka sisältää vuoden ensimmäisen torstain. Näin ollen ensimmäinen maanantai on aina joulukuun 29. päivän ja tammikuun 4. päivän välissä, joten tämän päivämäärän löytämiseksi on löydettävä tammikuun 5. päivää välittömästi edeltävä maanantai.
Microsoft Excelissä voit poimia viikonpäivän päivämäärän WEEKDAY-funktiolla. Voit käyttää seuraavaa yleistä kaavaa saadaksesi maanantaipäivän välittömästi ennen mitä tahansa päivämäärää:
= päivämäärä - WEEKDAY( päivämäärä - 2)Jos lopullisena tavoitteenamme olisi löytää A2-vuoden tammikuun 5. päivää välittömästi edeltävä maanantai, voisimme käyttää seuraavia DATE-funktioita:
=DATE(A2,1,5) - WEEKDAY(DATE(A2,1,3))
Itse asiassa emme kuitenkaan tarvitse tämän vuoden ensimmäistä maanantaita, vaan edellisen vuoden viimeisen maanantain. Tammikuun 5. päivästä on siis vähennettävä 7 päivää, ja näin ollen ensimmäisessä DATE-funktiossa on -2:
=DATE(A2,1,-2) - WEEKDAY(DATE(A2,1,3))
Verrattuna juuri oppimaasi hankalaan kaavaan, laskemalla Loppupäivä viikon sunnuntai on helppo nakki :) Saadaksesi kyseisen viikon sunnuntain, lisäät yksinkertaisesti 6 päivää viikkoon Aloituspäivä , ts. =D2+6
Vaihtoehtoisesti voit lisätä 6 suoraan kaavaan:
=DATE(A2, 1, -2) - WEEKDAY(DATE(A2, 1, 3)) + B2 * 7 + 6
Jotta voit varmistaa, että kaavat antavat aina oikeat päivämäärät, katso seuraavaa kuvakaappausta. Edellä käsitellyt aloituspäivämäärän ja lopetuspäivämäärän kaavat on kopioitu sarakkeisiin D ja E:
Muita tapoja muuntaa viikon numero päivämääräksi Excelissä
Jos edellä esitetty ISO-viikkopäivämääräjärjestelmään perustuva kaava ei vastaa tarpeitasi, kokeile jotakin seuraavista ratkaisuista.
Kaava 1. Viikko, joka sisältää 1.1., on viikko 1, ma-su viikko.
Kuten muistat, edellinen kaava perustuu ISO-päivämääräjärjestelmään, jossa vuoden ensimmäinen torstai katsotaan viikoksi 1. Jos työskentelet päivämääräjärjestelmässä, jossa tammikuun 1. päivän sisältävä viikko katsotaan viikoksi 1, käytä seuraavia kaavoja:
Aloituspäivä:
=DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),2) + (B2-1)*7 + 1
Päättymispäivä:
=DATE(A2,1,1)- WEEKDAY(DATE(A2,1,1),2) + B2*7
Kaava 2. Viikko, joka sisältää 1.1., on viikko 1, su-su viikko.
Nämä kaavat ovat samankaltaisia kuin edellä esitetyt, sillä erotuksella, että ne on kirjoitettu sunnuntai-lauantai -viikolle.
Aloituspäivä:
=DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),1) + (B2-1)*7 + 1
Päättymispäivä:
=DATE(A2,1,1)- WEEKDAY(DATE(A2,1,1),1) + B2*7
Kaava 3. Aloita laskenta aina tammikuun 1. päivänä, ma-su viikolla.
Kun aiemmat kaavat palauttavat viikon 1 maanantaina (tai sunnuntaina) riippumatta siitä, kuuluuko se tälle vai edelliselle vuodelle, tämä alkamispäivämäärän kaava palauttaa aina seuraavat tiedot 1. tammikuuta viikon 1 alkupäiväksi viikonpäivästä riippumatta. Vastaavasti loppupäivän kaava palauttaa aina arvon 31. joulukuuta vuoden viimeisen viikon päättymispäiväksi viikonpäivästä riippumatta. Muilta osin nämä kaavat toimivat samalla tavalla kuin kaava 1 edellä.
Aloituspäivä:
=MAX(DATE(A2,1,1), DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),2) + (B2-1)*7 + 1)
Päättymispäivä:
=MIN(DATE(A2+1,1,0), DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),2) + B2*7)
Kaava 4. Aloita laskenta aina tammikuun 1. päivänä, su-su viikolla.
Sunnuntai - lauantai -viikon alku- ja loppupäivämäärien laskeminen vaatii vain yhden pienen muutoksen yllä oleviin kaavoihin :)
Aloituspäivä:
=MAX(DATE(A2,1,1), DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),1) + (B2-1)*7 + 1)
Päättymispäivä:
=MIN(DATE(A2+1,1,0), DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),1) + B2*7)
Miten saada kuukausi viikon numerosta
Viikkonumeroa vastaavan kuukauden saamiseksi etsit tietyn viikon ensimmäisen päivän, kuten tässä esimerkissä selitetään, ja kietaise kaava Excelin MONTH-funktioon seuraavasti:
=MONTH(DATE(A2, 1, -2) - WEEKDAY(DATE(A2, 1, 3)) + B2 * 7)
Huom. Muistathan, että yllä oleva kaava toimii perustuen siihen, että ISO-viikon päivämääräjärjestelmä , jolloin viikko alkaa maanantaina ja viikkoa, joka sisältää vuoden ensimmäisen torstain, pidetään viikkona 1. Esimerkiksi vuonna 2016 ensimmäinen torstai on 7. tammikuuta, ja siksi viikko 1 alkaa 4.1.2016.
Miten saada viikon numero kuukaudessa (1-6)?
Jos liiketoimintalogiikkasi edellyttää tietyn päivämäärän muuntamista viikon numeroksi vastaavassa kuukaudessa, voit käyttää WEEKNUM-, DATE- ja MONTH-funktioiden yhdistelmää:
Oletetaan, että solu A2 sisältää alkuperäisen päivämäärän, ja käytetään seuraavaa kaavaa viikkoa varten, joka alkaa päivänä Maanantai (huomaa WEEKNUMin return_type-argumentin 21):
=WEEKNUM($A2,21)-WEEKNUM(DATE(YEAR($A2), MONTH($A2),1),21)+1
Viikon ajan, joka alkaa Sunnuntai , jätä return_type-argumentti pois:
=WEEKNUM($A2)-WEEKNUM(DATE(YEAR($A2), MONTH($A2),1))+1
Kuinka summataan arvot ja löydetään keskiarvo viikon numeron mukaan?
Nyt kun tiedät, miten päivämäärän voi muuntaa Excelissä viikkonumeroksi, katsotaan, miten viikkonumeroita voi käyttää muissa laskutoimituksissa.
Oletetaan, että sinulla on joitakin kuukausittaisia myyntilukuja ja haluat tietää kunkin viikon kokonaismäärän.
Aluksi selvitetään kutakin myyntiä vastaava viikkonumero. Jos päivämäärät ovat sarakkeessa A ja myynnit sarakkeessa B, kopioi =WEEKNUM(A2)
kaava koko sarakkeessa C alkaen solusta C2.
Tee sitten luettelo viikkonumeroista johonkin toiseen sarakkeeseen (esimerkiksi sarakkeeseen E) ja laske kunkin viikon myynti seuraavan SUMIF-kaavan avulla:
=SUMIF($C$2:$C$15, $E2, $B$2:$B$15)
E2 on viikon numero.
Tässä esimerkissä työskentelemme maaliskuun myyntiluettelon kanssa, joten meillä on viikkonumerot 10-14, kuten seuraavassa kuvakaappauksessa näkyy:
Samalla tavalla voit laskea tietyn viikon keskimääräisen myynnin:
=AVERAGEIF($C$2:$C$15, $E2, $B$2:$B$15)
Jos WEEKNUM-kaavalla varustettu apusarake ei sovi hyvin tietojen asetteluun, minun on valitettavasti kerrottava, että siitä ei ole yksinkertaista tapaa päästä eroon, koska Excelin WEEKNUM on yksi niistä funktioista, jotka eivät hyväksy alueargumentteja. Siksi sitä ei voi käyttää SUMPRODUCT- tai muussa matriisikaavassa, kuten MONTH-funktiossa vastaavassa tilanteessa.
Miten soluja korostetaan viikon numeron perusteella
Oletetaan, että sinulla on pitkä luettelo päivämääriä jossakin sarakkeessa ja haluat korostaa vain ne, jotka liittyvät tiettyyn viikkoon. Tarvitset vain ehdollisen muotoilusäännön, jossa on WEEKNUM-kaava, joka on samanlainen kuin tämä:
=WEEKNUM($A2)=10
Kuten alla olevassa kuvakaappauksessa näkyy, sääntö korostaa myyntejä, jotka on tehty viikolla 10 eli maaliskuun 2015 ensimmäisellä viikolla. Koska sääntö koskee A2:B15-sarakkeita, se korostaa molempien sarakkeiden arvoja. Voit lukea lisää ehdollisen muotoilun sääntöjen luomisesta tästä opetusohjelmasta: Excelin ehdollinen muotoilu toisen solun arvon perusteella.
Näin voit laskea viikkonumeroita Excelissä, muuntaa viikkonumeron päivämääräksi ja poimia viikkonumeron päivämäärästä. Toivottavasti tänään oppimasi WEEKNUM-kaavat osoittautuvat hyödyllisiksi työarkkeissasi. Seuraavassa opetusohjelmassa puhumme iän ja vuosien laskemisesta Excelissä. Kiitän sinua lukemisesta ja toivon, että näemme ensi viikolla!