"Excel" funkcija WEEKNUM - savaitės numerio konvertavimas į datą ir atvirkščiai

  • Pasidalinti
Michael Brown

Nors "Microsoft Excel" siūlo daugybę funkcijų, skirtų darbui su savaitės dienomis, mėnesiais ir metais, savaitėms galima naudoti tik vieną - funkciją WEEKNUM. Taigi, jei ieškote būdo, kaip iš datos gauti savaitės numerį, WEEKNUM yra ta funkcija, kurios jums reikia.

Šioje trumpoje pamokoje trumpai aptarsime "Excel WEEKNUM" sintaksę ir argumentus, o paskui pateiksime keletą formulės pavyzdžių, rodančių, kaip galite naudoti funkciją WEEKNUM savaitės skaičiams apskaičiuoti "Excel" darbalapiuose.

    "Excel" funkcija WEEKNUM - sintaksė

    Funkcija WEEKNUM "Excel" naudojama tam tikros metų datos savaitės numeriui grąžinti (skaičius nuo 1 iki 54). Ji turi du argumentus: 1-asis argumentas yra privalomas, o 2-asis - neprivalomas:

    WEEKNUM(serijinis_numeris, [grąžinimo_tipas])
    • Serijos_numeris - tai gali būti nuoroda į ląstelę, kurioje yra data, data, įvesta naudojant funkciją DATA arba grąžinta pagal kitą formulę.
    • Return_type (neprivaloma) - skaičius, kuris nurodo, kurią dieną prasideda savaitė. Jei nepateikiama, naudojamas numatytasis tipas 1 (savaitė prasideda sekmadienį).

    Čia pateikiamas išsamus sąrašas return_type reikšmės, palaikomos WEEKNUM formulėse.

    Return_type Savaitė prasideda
    1 arba 17 arba praleista Sekmadienis
    2 arba 11 Pirmadienis
    12 Antradienis
    13 Trečiadienis
    14 Ketvirtadienis
    15 Penktadienis
    16 Šeštadienis
    21 Pirmadienis (naudojama 2 sistemoje, žr. toliau pateiktą informaciją.)

    Funkcijoje WEEKNUM galima naudoti dvi skirtingas savaitės numeravimo sistemos naudojami:

    • 1 sistema. Savaitė, kurioje yra sausio 1 d., laikoma 1-ąja metų savaite ir numeruojama kaip 1-oji savaitė. Šioje sistemoje savaitė tradiciškai prasideda sekmadienį.
    • 2 sistema. Tai ISO savaitės datos sistema, kuri yra ISO 8601 datos ir laiko standarto dalis. Šioje sistemoje savaitė prasideda pirmadienį, o savaitė, kurioje yra pirmas metų ketvirtadienis, laikoma 1 savaite. Ši sistema paprastai vadinama Europos savaitės numeravimo sistema ir daugiausia naudojama vyriausybėje bei versle fiskaliniams metams ir laiko apskaitai.

    Visi pirmiau išvardyti grąžinimo tipai taikomi 1 sistemai, išskyrus 21 grąžinimo tipą, kuris naudojamas 2 sistemoje.

    Pastaba. 2007 m. ir ankstesnėse "Excel" versijose galimos tik 1 ir 2 parinktys. 11-21 grąžinimo tipai palaikomi tik "Excel 2010" ir "Excel 2013".

    "Excel" WEEKNUM formulės, skirtos konvertuoti datą į savaitės numerį (nuo 1 iki 54)

    Toliau pateiktoje ekrano nuotraukoje parodyta, kaip iš datų galima gauti savaitės numerius naudojant paprasčiausią =WEEKNUM(A2) formulė:

    Pirmiau pateiktoje formulėje return_type argumentas praleistas, o tai reiškia, kad naudojamas numatytasis 1 tipas - savaitė, prasidedanti sekmadienį.

    Jei norite pradėti nuo kitos savaitės dienos, pavyzdžiui, pirmadienio, tuomet antrajame argumente naudokite 2:

    =WEEKNUM(A2, 2)

    Užuot pateikę nuorodą į ląstelę, datą galite nurodyti tiesiogiai formulėje, pavyzdžiui, naudodami funkciją DATA(metai, mėnuo, diena):

    = SAVAITĖS SKAIČIUS(DATA(2015,4,15), 2)

    Pagal pirmiau pateiktą formulę gaunama 16, t. y. savaitės, kurioje yra 2015 m. balandžio 15 d. (savaitė prasideda pirmadienį), numeris.

    Realiame gyvenime "Excel" funkcija WEEKNUM retai naudojama atskirai. Dažniausiai ji naudojama kartu su kitomis funkcijomis, kad būtų galima atlikti įvairius skaičiavimus pagal savaitės numerį, kaip parodyta tolesniuose pavyzdžiuose.

    Kaip konvertuoti savaitės numerį į datą programoje "Excel

    Kaip ką tik matėte, nėra sunku paversti datą savaitės numeriu naudojant "Excel" funkciją WEEKNUM. Bet ką daryti, jei norite priešingai, t. y. paversti savaitės numerį data? Deja, nėra "Excel" funkcijos, kuri galėtų tai padaryti iš karto. Taigi turėsime sukurti savo formules.

    Tarkime, kad ląstelėje A2 yra metai, o ląstelėje B2 - savaitės numeris, ir dabar norite apskaičiuoti šios savaitės pradžios ir pabaigos datas.

    Pastaba. Šis formulės pavyzdys pagrįstas ISO savaitės numeriais, kai savaitė prasideda pirmadienį.

    Formulė, grąžinanti Pradžios data savaitės laikas yra toks:

    =DATA(A2, 1, -2) - SAVAITĖS DIENA(DATA(A2, 1, 3)) + B2 * 7

    Kai A2 yra metai, o B2 - savaitės numeris.

    Atkreipkite dėmesį, kad formulė grąžina datą kaip eilės numerį, o norint, kad ji būtų rodoma kaip data, reikia atitinkamai suformatuoti ląstelę. Išsamias instrukcijas galite rasti straipsnyje Datos formato keitimas "Excel" programoje. Štai formulės grąžinamas rezultatas:

    Žinoma, savaitės numerio konvertavimo į datą formulė nėra triviali, todėl gali prireikti šiek tiek laiko, kol perprasite logiką. Bet kokiu atveju pasistengsiu pateikti prasmingą paaiškinimą tiems, kuriems smalsu įsigilinti į esmę.

    Kaip matote, mūsų formulę sudaro 2 dalys:

    • DATA(A2, 1, -2) - SAVAITĖS DIENA(DATA(A2, 1, 3)) - apskaičiuoja praėjusių metų paskutinio pirmadienio datą.
    • B2 * 7 - sudeda savaičių skaičių, padaugintą iš 7 (savaitės dienų skaičiaus), ir gauna atitinkamos savaitės pirmadienį (pradžios datą).

    Pagal ISO savaičių numeracijos sistemą 1 savaitė yra savaitė, kurioje yra pirmasis metų ketvirtadienis. Todėl pirmasis pirmadienis visada yra tarp gruodžio 29 d. ir sausio 4 d. Taigi, norėdami rasti šią datą, turime rasti pirmadienį prieš pat sausio 5 d.

    "Microsoft Excel" programoje savaitės dieną iš datos galite išgauti naudodami funkciją WEEKDAY (savaitės diena). Norėdami gauti pirmadienį prieš pat bet kurią datą, galite naudoti šią bendrą formulę:

    = data - SAVAITĖS DIENA( data - 2)

    Jei mūsų galutinis tikslas būtų rasti pirmadienį prieš pat A2 metų sausio 5 d., galėtume naudoti šias DATE funkcijas:

    =DATA(A2,1,5) - SAVAITĖS DIENA(DATA(A2,1,3))

    Tačiau iš tikrųjų mums reikia ne pirmojo šių metų pirmadienio, o paskutiniojo praėjusių metų pirmadienio. Taigi iš sausio 5 d. reikia atimti 7 dienas, todėl pirmojoje DATE funkcijoje gauname -2:

    =DATA(A2,1,-2) - SAVAITĖS DIENA(DATA(A2,1,3))

    Palyginti su ką tik išmokta sudėtinga formule, apskaičiuojant Galutinė data Savaitės sekmadienis - tai paprastas dalykas :) Norėdami gauti atitinkamos savaitės sekmadienį, tiesiog pridėkite 6 dienas prie savaitės sekmadienio. Pradžios data , t. y. =D2+6

    Taip pat galite įrašyti 6 tiesiai į formulę:

    =DATA(A2, 1, -2) - SAVAITĖS DIENA(DATA(A2, 1, 3)) + B2 * 7 + 6

    Norėdami įsitikinti, kad formulės visada pateikia teisingas datas, pažiūrėkite į toliau pateiktą ekrano nuotrauką. Pirmiau aptartos pradžios ir pabaigos datos formulės nukopijuotos atitinkamai į D ir E stulpelius:

    Kiti būdai konvertuoti savaitės numerį į datą programoje "Excel

    Jei pirmiau pateikta formulė, pagrįsta ISO savaitės datos sistema, neatitinka jūsų reikalavimų, išbandykite vieną iš toliau pateiktų sprendimų.

    1 formulė. Savaitė, kurioje yra sausio 1 d., yra 1 savaitė, pirmadienio-sekmadienio savaitė

    Kaip pamenate, ankstesnė formulė veikia pagal ISO datų sistemą, kurioje pirmasis metų ketvirtadienis laikomas pirmąja savaite. Jei dirbate pagal datų sistemą, kurioje savaitė, kurioje yra sausio 1 d., laikoma pirmąja savaite, naudokite šias formules:

    Darbo pradžios data:

    =DATA(A2,1,1) - SAVAITĖS DIENA(DATA(A2,1,1),2) + (B2-1)*7 + 1

    Galutinė data:

    =DATA(A2,1,1)-SAVAITĖS DIENA(DATA(A2,1,1),2) + B2*7

    2 formulė. Savaitė, kurioje yra Jan-1, yra 1 savaitė, savaitė nuo saulės iki sekmadienio

    Šios formulės panašios į pirmiau pateiktas, tik su tuo skirtumu, kad jos skirtos sekmadienio-šeštadienio savaitei.

    Darbo pradžios data:

    =DATA(A2,1,1) - SAVAITĖS DIENA(DATA(A2,1,1),1) + (B2-1)*7 + 1

    Galutinė data:

    =DATA(A2,1,1)-SAVAITĖS DIENA(DATA(A2,1,1),1) + B2*7

    3 formulė. Visada pradėkite skaičiuoti sausio 1 d., pirmadieniais-sekmadieniais

    Ankstesnės formulės grąžina 1 savaitės pirmadienį (arba sekmadienį), neatsižvelgiant į tai, ar tai šių, ar ankstesnių metų savaitė, o ši pradžios datos formulė visada grąžina sausio 1 d. kaip 1 savaitės pradžios datą, neatsižvelgiant į savaitės dieną. Analogiškai, formulė "pabaigos data" visada grąžina gruodžio 31 d. kaip paskutinės metų savaitės pabaigos datą, neatsižvelgiant į savaitės dieną. Visais kitais atžvilgiais šios formulės veikia panašiai kaip ir pirmiau pateikta 1 formulė.

    Darbo pradžios data:

    =MAX(DATA(A2,1,1), DATA(A2,1,1) - SAVAITĖS DIENA(DATA(A2,1,1),2) + (B2-1)*7 + 1)

    Galutinė data:

    =MIN(DATA(A2+1,1,0), DATA(A2,1,1) - SAVAITĖS DIENA(DATA(A2,1,1),2) + B2*7)

    4 formulė. Visada pradėkite skaičiuoti nuo sausio 1 d., Saulės-Šeštadienio savaitės

    Norint apskaičiuoti savaitės pradžios ir pabaigos datas nuo sekmadienio iki šeštadienio, tereikia šiek tiek pakoreguoti pirmiau pateiktas formules :)

    Darbo pradžios data:

    =MAX(DATA(A2,1,1), DATA(A2,1,1) - SAVAITĖS DIENA(DATA(A2,1,1),1) + (B2-1)*7 + 1)

    Galutinė data:

    =MIN(DATA(A2+1,1,0), DATA(A2,1,1) - SAVAITĖS DIENA(DATA(A2,1,1),1) + B2*7)

    Kaip gauti mėnesį iš savaitės numerio

    Norėdami gauti savaitės numerį atitinkantį mėnesį, suraskite pirmąją tam tikros savaitės dieną, kaip paaiškinta šiame pavyzdyje, ir tada šią formulę įtraukite į "Excel" funkciją MONTH taip:

    =MĖNUO(DATA(A2, 1, -2) - SAVAITĖS DIENA(DATA(A2, 1, 3)) + B2 * 7)

    Atminkite, kad pirmiau pateikta formulė veikia pagal ISO savaitės datų sistema , kai savaitė prasideda pirmadienį, o savaitė, kurioje yra pirmasis metų ketvirtadienis, laikoma pirmąja savaite. Pavyzdžiui, 2016 m. pirmasis ketvirtadienis yra sausio 7 d., todėl pirmoji savaitė prasideda 2016 m. sausio 4 d.

    Kaip gauti savaitės numerį per mėnesį (nuo 1 iki 6)

    Jei jūsų verslo logikai reikia konvertuoti konkrečią datą į atitinkamo mėnesio savaitės numerį, galite naudoti WEEKNUM, DATE ir MONTH funkcijų derinį:

    Darant prielaidą, kad ląstelėje A2 yra pradinė data, naudokite šią formulę savaitei, prasidedančiai nuo Pirmadienis (atkreipkite dėmesį į 21 WEEKNUM argumentą return_type):

    = SAVAITĖS SKAIČIUS($A2,21)-SAVAITĖS SKAIČIUS(DATA(METAI($A2), MĖNUO($A2),1),21)+1

    Savaitę nuo Sekmadienis , praleiskite argumentą return_type:

    = SAVAITĖS SKAIČIUS($A2)-SAVAITĖS SKAIČIUS(DATA(METAI($A2), MĖNUO($A2),1))+1

    Kaip sumuoti vertes ir rasti vidurkį pagal savaitės numerį

    Dabar, kai žinote, kaip "Excel" programoje konvertuoti datą į savaitės skaičių, pažiūrėkime, kaip savaitės skaičius naudoti kituose skaičiavimuose.

    Tarkime, turite tam tikrus mėnesio pardavimų duomenis ir norite sužinoti bendrą kiekvienos savaitės sumą.

    Pirmiausia išsiaiškinkime kiekvieną pardavimą atitinkantį savaitės numerį. Jei jūsų datos yra A stulpelyje, o pardavimai - B stulpelyje, nukopijuokite =WEEKNUM(A2) formulę per visą C stulpelį, pradedant langeliu C2.

    Tada sudarykite savaitės numerių sąrašą kitame stulpelyje (pvz., E stulpelyje) ir apskaičiuokite kiekvienos savaitės pardavimus naudodami šią SUMIF formulę:

    =SUMIF($C$2:$C$15, $E2, $B$2:$B$15)

    Kur E2 yra savaitės numeris.

    Šiame pavyzdyje dirbame su kovo mėnesio pardavimų sąrašu, todėl turime savaitės numerius nuo 10 iki 14, kaip parodyta toliau pateiktoje ekrano kopijoje:

    Panašiai galite apskaičiuoti tam tikros savaitės pardavimų vidurkį:

    =AVERAGEIF($C$2:$C$15, $E2, $B$2:$B$15)

    Jei pagalbinis stulpelis su WEEKNUM formule netinka jūsų duomenų išdėstymui, su apgailestavimu turiu pasakyti, kad nėra paprasto būdo jo atsikratyti, nes "Excel" WEEKNUM yra viena iš tų funkcijų, kurios nepriima diapazono argumentų. Todėl jos negalima naudoti SUMPRODUCT ar bet kurioje kitoje masyvo formulėje, pavyzdžiui, MONTH funkcijos atveju.

    Kaip paryškinti ląsteles pagal savaitės numerį

    Tarkime, turite ilgą datų sąrašą tam tikrame stulpelyje ir norite paryškinti tik tas, kurios susijusios su tam tikra savaite. Jums tereikia sąlyginio formatavimo taisyklės su WEEKNUM formule, panašios į šią:

    =WEEKNUM($A2)=10

    Kaip parodyta toliau pateiktoje ekrano nuotraukoje, taisyklė išryškina pardavimus, kurie buvo atlikti per 10 savaitę, t. y. pirmąją 2015 m. kovo savaitę. Kadangi taisyklė taikoma A2:B15, ji išryškina abiejų stulpelių reikšmes. Daugiau apie sąlyginio formatavimo taisyklių kūrimą galite sužinoti šioje pamokoje: "Excel" sąlyginis formatavimas pagal kitos ląstelės reikšmę.

    Taip galite apskaičiuoti savaitės numerius "Excel" programoje, konvertuoti savaitės numerį į datą ir išvesti savaitės numerį iš datos. Tikiuosi, kad šiandien išmoktos WEEKNUM formulės bus naudingos jūsų darbalapiuose. Kitoje pamokoje kalbėsime apie amžiaus ir metų skaičiavimą "Excel" programoje. Dėkoju, kad perskaitėte, ir tikiuosi, kad pasimatysime kitą savaitę!

    Michaelas Brownas yra atsidavęs technologijų entuziastas, mėgstantis supaprastinti sudėtingus procesus naudojant programinės įrangos įrankius. Turėdamas daugiau nei dešimtmetį patirtį technologijų pramonėje, jis patobulino savo įgūdžius „Microsoft Excel“ ir „Outlook“, taip pat „Google“ skaičiuoklėse ir dokumentuose. Michaelio tinklaraštis skirtas dalytis savo žiniomis ir patirtimi su kitais, jame pateikiami lengvai įgyvendinami patarimai ir vadovėliai, kaip pagerinti produktyvumą ir efektyvumą. Nesvarbu, ar esate patyręs profesionalas, ar pradedantysis, Michaelo tinklaraštyje rasite vertingų įžvalgų ir praktinių patarimų, kaip išnaudoti visas šių pagrindinių programinės įrangos įrankių galimybes.