Функцыя Excel WEEKNUM – ​​пераўтварэнне нумара тыдня ў дату і наадварот

  • Падзяліцца Гэтым
Michael Brown

У той час як Microsoft Excel забяспечвае мноства функцый для працы з днямі тыдня, месяцамі і гадамі, толькі адна даступная для тыдняў - функцыя WEEKNUM. Такім чынам, калі вы шукаеце спосаб атрымаць нумар тыдня з даты, WEEKNUM - гэта тая функцыя, якая вам патрэбна.

У гэтым кароткім падручніку мы коратка пагаворым пра сінтаксіс і аргументы Excel WEEKNUM і затым абмяркуйце некалькі прыкладаў формул, якія дэманструюць, як вы можаце выкарыстоўваць функцыю WEEKNUM для вылічэння нумароў тыдняў у вашых лістах Excel.

    Функцыя Excel WEEKNUM - сінтаксіс

    Функцыя WEEKNUM гэта выкарыстоўваецца ў Excel для вяртання нумара тыдня пэўнай даты ў годзе (лік ад 1 да 54). Ён мае два аргументы, 1-ы абавязковы, а 2-і неабавязковы:

    WEEKNUM(парадкавы_нумар, [тып_вяртання])
    • Парадкавы_нумар - любая дата тыдня, нумар якой вы спрабуеце знайсці знайсці. Гэта можа быць спасылка на ячэйку, якая змяшчае дату, дату, уведзеную з дапамогай функцыі ДАТА або вернутую іншай формулай.
    • Тып_вяртання (неабавязковы) - лік, які вызначае, на якім дзень, які пачынаецца тыдзень. Калі апусціць, выкарыстоўваецца тып па змаўчанні 1 (тыдзень, які пачынаецца ў нядзелю).

    Вось поўны спіс з return_type значэнняў, якія падтрымліваюцца ў формулах WEEKNUM.

    Return_type Тыдзень пачынаецца
    1 або 17 або апускаецца нядзеля
    2 ці11 панядзелак
    12 аўторак
    13 серада
    14 чацвер
    15 пятніца
    16 Субота
    21 Панядзелак (выкарыстоўваецца ў сістэме 2, глядзіце падрабязнасці ніжэй.)

    У функцыі WEEKNUM выкарыстоўваюцца дзве розныя сістэмы нумарацыі тыдняў :

    • Сістэма 1. Улічваецца тыдзень, які змяшчае 1 студзеня 1-ы тыдзень года і мае нумар тыдня 1. У гэтай сістэме тыдзень традыцыйна пачынаецца ў нядзелю.
    • Сістэма 2. Гэта сістэма даты тыдня ISO, якая з'яўляецца часткай Стандарт даты і часу ISO 8601. У гэтай сістэме тыдзень пачынаецца ў панядзелак, а тыдзень, які змяшчае першы чацвер года, лічыцца тыднем 1. Яна шырока вядомая як еўрапейская сістэма нумарацыі тыдняў і выкарыстоўваецца ў асноўным ва ўрадзе і бізнесе для фінансавых гадоў і адліку часу.

    Усе тыпы вяртання, пералічаныя вышэй, прымяняюцца да Сістэмы 1, за выключэннем тыпу вяртання 21, які выкарыстоўваецца ў Сістэме 2.

    Заўвага. У Excel 2007 і больш ранніх версіях даступныя толькі варыянты 1 і 2. Тыпы вяртання з 11 па 21 падтрымліваюцца толькі ў Excel 2010 і Excel 2013.

    Формулы Excel WEEKNUM для пераўтварэння даты ў нумар тыдня (ад 1 да 54)

    На наступным скрыншоце паказана, як можна атрымаць нумары тыдняў з дат з дапамогай найпростай формулы =WEEKNUM(A2) :

    Вышэйу формуле аргумент return_type апушчаны, што азначае, што выкарыстоўваецца тып па змаўчанні 1 - тыдзень, які пачынаецца ў нядзелю.

    Калі вы хочаце пачаць з іншага дня тыдня, скажам, панядзелка, выкарыстоўвайце 2 у другім аргументе:

    =WEEKNUM(A2, 2)

    Замест таго, каб спасылацца на ячэйку, вы можаце ўказаць дату непасрэдна ў формуле з дапамогай функцыі ДАТА(год, месяц, дзень), напрыклад:

    =WEEKNUM(DATE(2015,4,15), 2)

    Прыведзеная вышэй формула вяртае 16, які з'яўляецца нумарам тыдня, які змяшчае 15 красавіка 2015 г. з тыднем, які пачынаецца ў панядзелак.

    У рэальных сцэнарыях , функцыя Excel WEEKNUM рэдка выкарыстоўваецца сама па сабе. Часцей за ўсё вы выкарыстоўваеце яго ў спалучэнні з іншымі функцыямі для выканання розных вылічэнняў на аснове нумара тыдня, як паказана ў далейшых прыкладах.

    Як пераўтварыць нумар тыдня ў дату ў Excel

    Як вы толькі што бачылі, ператварыць дату ў нумар тыдня з дапамогай функцыі Excel WEEKNUM не складае вялікай працы. Але што, калі вы шукаеце адваротнае, гэта значыць пераўтварыць нумар тыдня ў дату? На жаль, няма функцыі Excel, якая магла б зрабіць гэта адразу. Такім чынам, нам трэба будзе пабудаваць нашы ўласныя формулы.

    Выкажам здагадку, што ў вас ёсць год у ячэйцы A2 і нумар тыдня ў B2, і цяпер вы хочаце вылічыць даты пачатку і заканчэння гэтага тыдня.

    Заўвага. Гэты прыклад формулы заснаваны на нумарах тыдняў ISO, тыдзень пачынаецца ў панядзелак.

    Формула для вяртання Пачатакдата тыдня наступная:

    =DATE(A2, 1, -2) - WEEKDAY(DATE(A2, 1, 3)) + B2 * 7

    Дзе A2 - год, а B2 - нумар тыдня.

    Звярніце ўвагу, што формула вяртае дату як парадкавы нумар, і каб ён адлюстроўваўся як дата, вам трэба адфарматаваць ячэйку адпаведным чынам. Вы можаце знайсці падрабязныя інструкцыі ў раздзеле Змена фармату даты ў Excel. І вось вынік, які вяртаецца формулай:

    Вядома, формула для пераўтварэння нумара тыдня ў дату нетрывіяльная, і для яе атрымання можа спатрэбіцца некаторы час галава вакол логікі. У любым выпадку, я зраблю ўсё магчымае, каб даць змястоўнае тлумачэнне для тых, каму цікава дакапацца да сутнасці.

    Як бачыце, наша формула складаецца з 2 частак:

    • DATE(A2, 1, -2) - WEEKDAY(DATE(A2, 1, 3)) - разлічвае дату апошняга панядзелка ў папярэднім годзе.
    • B2 * 7 - дадае колькасць тыдняў, памножаную на 7 (колькасць дзён у тыдні), каб атрымаць панядзелак (дата пачатку) тыдня ў пытанне.

    У сістэме нумарацыі тыдняў ISO тыдзень 1 - гэта тыдзень, які змяшчае першы чацвер года. Такім чынам, першы панядзелак заўсёды знаходзіцца паміж 29 снежня і 4 студзеня. Такім чынам, каб знайсці гэтую дату, мы павінны знайсці панядзелак непасрэдна перад 5 студзеня.

    У Microsoft Excel вы можаце атрымаць дзень тыдня з дату з дапамогай функцыі WEEKDAY. І вы можаце выкарыстоўваць наступную агульную формулу, каб атрымаць панядзелак непасрэдна перад любой зададзенай датай:

    = дата - ТЫДЗЕНЬ( дата - 2)

    Калі нашканчатковай мэтай было знайсці панядзелак непасрэдна перад 5 студзеня года ў A2, мы маглі б выкарыстаць наступныя функцыі DATE:

    =DATE(A2,1,5) - WEEKDAY(DATE(A2,1,3))

    Але тое, што нам насамрэч патрэбна, гэта не першы панядзелак года у гэтым годзе, а хутчэй у апошні панядзелак мінулага года. Такім чынам, вы павінны адняць 7 дзён ад 5 студзеня, і, такім чынам, вы атрымаеце -2 у першай функцыі ДАТЫ:

    =DATE(A2,1,-2) - WEEKDAY(DATE(A2,1,3))

    У параўнанні з хітрай формулай, якую вы толькі што даведаліся, вылічваючы Дата заканчэння тыдня - гэта кавалак пірага :) Каб атрымаць нядзелю разгляданага тыдня, вы проста дадаеце 6 дзён да даты пачатку , г.зн. =DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),2) + (B2-1)*7 + 1

    У якасці альтэрнатывы вы можаце дадаць 6 непасрэдна ў формулу:

    =DATE(A2, 1, -2) - WEEKDAY(DATE(A2, 1, 3)) + B2 * 7 + 6

    Каб упэўніцца, што формулы заўсёды даюць правільныя даты, паглядзіце на наступнае скрыншот. Разгледжаныя вышэй формулы даты пачатку і даты заканчэння капіююцца ў слупкі D і E адпаведна:

    Іншыя спосабы пераўтварэння нумара тыдня ў дату ў Excel

    Калі прыведзеная вышэй формула, заснаваная на сістэме даты тыдня ISO, не адпавядае вашым патрабаванням, паспрабуйце адно з наступных рашэнняў.

    Формула 1. Тыдзень, які змяшчае 1 студзеня, з'яўляецца тыднем 1, тыднем пн-нд

    Як вы памятаеце, папярэдняя формула працуе на аснове сістэмы дат ISO, дзе першы чацвер года лічыцца тыднем 1. Калі вы працуеце на аснове сістэмы дат, дзе тыдзень, які змяшчае 1 студзеня, лічыцца тыднем 1, выкарыстоўваць наступнаеформулы:

    Дата пачатку:

    =DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),2) + (B2-1)*7 + 1

    Дата заканчэння:

    =DATE(A2,1,1)- WEEKDAY(DATE(A2,1,1),2) + B2*7

    Формула 2. Тыдзень, які змяшчае студзень-1, з'яўляецца тыднем 1, тыднем нд-сб

    Гэтыя формулы падобныя на прыведзеныя вышэй з той толькі розніцай, што яны напісаны на нядзелю - суботу тыдзень.

    Дата пачатку:

    =DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),1) + (B2-1)*7 + 1

    Дата заканчэння:

    =DATE(A2,1,1)- WEEKDAY(DATE(A2,1,1),1) + B2*7

    Формула 3. Заўсёды пачынаць адлік з 1 студзеня, тыдзень пн-нд

    У той час як папярэднія формулы вяртаюць панядзелак (або нядзелю) тыдня 1, незалежна у залежнасці ад таго, ці трапляе ў гэты год ці ў папярэдні год, гэтая формула даты пачатку заўсёды вяртае 1 студзеня як дату пачатку тыдня 1 незалежна ад дня тыдня. Па аналогіі, формула даты заканчэння заўсёды вяртае 31 снежня як дату заканчэння апошняга тыдня ў годзе, незалежна ад дня тыдня. Ва ўсіх астатніх адносінах гэтыя формулы працуюць аналагічна формуле 1 вышэй.

    Дата пачатку:

    =MAX(DATE(A2,1,1), DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),2) + (B2-1)*7 + 1)

    Дата заканчэння:

    =MIN(DATE(A2+1,1,0), DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),2) + B2*7)

    Формула 4. Заўсёды пачынайце адлік з 1 студзеня, тыдзень па нядзелю-суб

    Для разліку даты пачатку і заканчэння для тыдня з нядзелі па суботу ўсё, што патрабуецца, гэта адна невялікая карэкціроўка ў прыведзеных вышэй формулах :)

    Дата пачатку:

    =MAX(DATE(A2,1,1), DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),1) + (B2-1)*7 + 1)

    Дата заканчэння:

    =MIN(DATE(A2+1,1,0), DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),1) + B2*7)

    Як атрымаць месяц з нумара тыдня

    Каб атрымаць месяц, які адпавядае тыдню лік, вы знойдзеце першы дзень дадзенага тыдня, як тлумачыцца ў гэтымнапрыклад, а затым абгарніце гэтую формулу ў функцыю МЕСЯЦ Excel наступным чынам:

    =MONTH(DATE(A2, 1, -2) - WEEKDAY(DATE(A2, 1, 3)) + B2 * 7)

    Заўвага. Памятайце, што прыведзеная вышэй формула працуе на аснове сістэмы дат тыдня ISO , дзе тыдзень пачынаецца ў панядзелак, а тыдзень, які змяшчае 1-ы чацвер года, лічыцца тыднем 1. Напрыклад, у 2016 годзе, першы чацвер - 7 студзеня, і таму тыдзень 1 пачынаецца 4 студзеня 2016 г.

    Як атрымаць нумар тыдня ў месяцы (ад 1 да 6)

    Калі ваша бізнес-логіка патрабуе пераўтварэння пэўнай даты ў нумар тыдня ў адпаведным месяцы, вы можаце выкарыстоўваць камбінацыю WEEKNUM, Функцыі ДАТА і МЕСЯЦ:

    Мяркуючы, што ячэйка A2 утрымлівае зыходную дату, выкарыстоўвайце наступную формулу для тыдня, які пачынаецца ў панядзелак (звярніце ўвагу на 21 у аргументе тыпу вяртання WEEKNUM):

    =WEEKNUM($A2,21)-WEEKNUM(DATE(YEAR($A2), MONTH($A2),1),21)+1

    Для тыдня, які пачынаецца ў нядзелю , прапусціце аргумент return_type:

    =WEEKNUM($A2)-WEEKNUM(DATE(YEAR($A2), MONTH($A2),1))+1

    Як сумавыя значэнні і знаходжанне сярэдняга па нумары тыдня

    Цяпер, калі вы ведаеце, як пераўтварыць дату ў нумар тыдня ў Excel, давайце паглядзім, як вы можаце выкарыстоўваць нумары тыдняў у іншых разліках.

    Выкажам здагадку , у вас ёсць некаторыя штомесячныя лічбы продажаў, і вы хочаце ведаць агульную суму за кожны тыдзень.

    Для пачатку давайце даведаемся нумар тыдня, які адпавядае кожнай продажы. Калі вашы даты знаходзяцца ў слупку A, а продажы - у слупку B, скапіруйце формулу =WEEKNUM(A2) у слупок C, пачынаючы з ячэйкіC2.

    А потым складзіце спіс нумароў тыдняў у іншым слупку (напрыклад, у слупку E) і разлічыце продажы за кожны тыдзень, выкарыстоўваючы наступную формулу SUMIF:

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

    Дзе E2 - нумар тыдня.

    У гэтым прыкладзе мы працуем са спісам сакавіцкіх распродажаў, таму ў нас ёсць нумары тыдняў з 10 па 14, як паказана на наступным скрыншоце:

    Аналагічным чынам вы можаце вылічыць сярэдні аб'ём продажаў за пэўны тыдзень:

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

    Калі дапаможны слупок з формулай WEEKNUM дрэнна ўпісваецца ў ваш макет даных, я, на жаль, павінен сказаць вам, што няма простага спосабу пазбавіцца ад яго, таму што Excel WEEKNUM з'яўляецца адной з такіх функцый які не прымае аргументы дыяпазону. Такім чынам, ён не можа быць выкарыстаны ў SUMPRODUCT або любой іншай формуле масіва, як функцыя MONTH, у падобным сцэнарыі.

    Як вылучыць ячэйкі на аснове нумара тыдня

    Дапусцім, у вас ёсць доўгі спіс дат у некаторым слупку, і вы хочаце вылучыць толькі тыя, якія адносяцца да дадзенага тыдня. Усё, што вам трэба, гэта правіла ўмоўнага фарматавання з формулай WEEKNUM, падобнай да гэтай:

    =WEEKNUM($A2)=10

    Як паказана на скрыншоце ніжэй, правіла вылучае продажу, якія былі зроблены на працягу 10 тыдня, які з'яўляецца першы тыдзень сакавіка 2015 г. Паколькі правіла прымяняецца да A2:B15, яно вылучае значэнні ў абодвух слупках. Вы можаце даведацца больш аб стварэнні правілаў умоўнага фарматавання ў гэтымпадручнік: умоўнае фарматаванне Excel на аснове іншага значэння ячэйкі.

    Вось як вы можаце вылічыць нумары тыдняў у Excel, пераўтварыць нумар тыдня ў дату і атрымаць нумар тыдня з даты. Будзем спадзявацца, што формулы WEEKNUM, якія вы вывучылі сёння, апынуцца карыснымі ў вашых працоўных лістах. У наступным уроку мы пагаворым аб разліку ўзросту і гадоў у Excel. Я дзякую вам за чытанне і спадзяюся ўбачымся на наступным тыдні!

    Майкл Браўн - адданы энтузіяст тэхналогій, які любіць спрашчэнне складаных працэсаў з дапамогай праграмных інструментаў. Маючы больш чым дзесяцігадовы досвед працы ў індустрыі тэхналогій, ён удасканальваў свае навыкі ў Microsoft Excel і Outlook, а таксама ў Google Sheets і Docs. Блог Майкла прысвечаны таму, каб падзяліцца сваімі ведамі і вопытам з іншымі, даючы простыя ў выкананні парады і падручнікі для павышэння прадукцыйнасці і эфектыўнасці. Незалежна ад таго, з'яўляецеся вы дасведчаным прафесіяналам або пачаткоўцам, блог Майкла прапануе каштоўную інфармацыю і практычныя парады, каб атрымаць максімальную аддачу ад гэтых неабходных праграмных інструментаў.