Формула WEEKDAY у Excel, каб атрымаць дзень тыдня, выхадныя і працоўныя дні

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

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

Існуе мноства функцый для праца з датамі ў Excel. Функцыя дня тыдня (WEEKDAY) асабліва карысная для планавання і раскладу, напрыклад, для вызначэння тэрмінаў праекта і аўтаматычнага выдалення выхадных з агульнай колькасці. Такім чынам, давайце прабяжым прыклады адзін за адным і паглядзім, як яны могуць дапамагчы вам справіцца з рознымі задачамі, звязанымі з датамі ў Excel.

    WEEKDAY - функцыя Excel для дня тыдзень

    Функцыя Excel WEEKDAY выкарыстоўваецца для вяртання дня тыдня з зададзенай даты.

    Вынікам з'яўляецца цэлы лік у дыяпазоне ад 1 (нядзеля) да 7 (субота) па змаўчанні . Калі ваша бізнес-логіка патрабуе іншага пераліку, вы можаце наладзіць формулу для пачатку адліку з любога іншага дня тыдня.

    Функцыя WEEKDAY даступная ва ўсіх версіях Excel 365 да 2000.

    Сінтаксіс функцыі WEEKDAY наступны:

    WEEKDAY(парадкавы_нумар, [тып_вяртання])

    Дзе:

    Парадкавы_нумар (абавязкова) - дата, якую вы хочаце пераўтварыць на нумар будняга дня. Ён можа быць прадстаўлены ў выглядзе парадкавага нумара, які прадстаўляе дату, у выглядзе тэкставага радка ў фармацеякі Excel разумее як ​​спасылку на ячэйку, якая змяшчае дату, або з дапамогай функцыі ДАТА.

    Тып_вяртання (неабавязкова) - вызначае, які дзень тыдня выкарыстоўваць у якасці першага дня . Калі прапушчана, па змаўчанні выкарыстоўваецца тыдзень сонца-сб.

    Вось спіс усіх падтрымоўваных значэнняў return_type :

    Return_type Вернуты нумар
    1 або прапушчаны Ад 1 (нядзеля) да 7 (субота)
    2 З 1 (панядзелак) да 7 (нядзеля)
    3 З 0 (панядзелак) да 6 (нядзеля)
    11 З 1 (панядзелак) да 7 (нядзеля)
    12 З 1 (аўторак) па 7 (панядзелак)
    13 З 1 (серада) да 7 (аўторак)
    14 З 1 (чацвер) да 7 (серада)
    15 З 1 (пятніца) да 7 (чацвер)
    16 З 1 (субота) да 7 (пятніца)
    17 З 1 (нядзеля) да 7 (субота)

    Заўвага. Значэнні return_type з 11 па 17 былі ўведзены ў Excel 2010 і таму іх нельга выкарыстоўваць у больш ранніх версіях.

    Асноўная формула WEEKDAY у Excel

    Для пачатку давайце паглядзім, як каб выкарыстаць формулу WEEKDAY у самай простай форме, каб атрымаць нумар дня ад даты.

    Напрыклад, каб атрымаць дзень тыдня ад даты ў C4 са стандартным тыднем нядзеля - субота, формула:

    =WEEKDAY(C4)

    Калі ў вас ёсць серыйны нумарпрадстаўляючы дату (напрыклад, атрыманую функцыяй DATEVALUE), вы можаце ўвесці гэты лік непасрэдна ў формулу:

    =WEEKDAY(45658)

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

    =WEEKDAY("1/1/2025")

    Або падайце зыходную дату 100% надзейным спосабам з дапамогай функцыі ДАТА:

    =WEEKDAY(DATE(2025, 1,1))

    Каб выкарыстоўваць адлюстраванне дзён, адрознае ад стандартнага сонца-сб, увядзіце адпаведны лік у другі аргумент. Напрыклад, каб пачаць адлік дзён з панядзелка, формула:

    =WEEKDAY(C4, 2)

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

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

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

    Па задуме функцыя Excel WEEKDAY вяртае дзень тыдня ў выглядзе ліку. Каб ператварыць нумар дня тыдня ў назву дня, выкарыстоўвайце функцыю TEXT.

    Каб атрымаць поўныя назвы дзён , выкарыстоўвайце код фармату "dddd":

    TEXT(WEEKDAY( дата ), "dddd")

    Для вяртання скарочананазвы дзён , код фармату "ddd":

    TEXT(WEEKDAY( date ), "ddd")

    Напрыклад, каб пераўтварыць дату ў A3 у назву дня тыдня , формула:

    =TEXT(WEEKDAY(A3), "dddd")

    Або

    =TEXT(WEEKDAY(A3), "ddd")

    Іншым магчымым рашэннем з'яўляецца выкарыстанне WEEKDAY разам з функцыяй CHOOSE.

    Напрыклад, каб атрымаць скарочаную назву дня тыдня з даты ў A3, формула выглядае наступным чынам:

    =CHOOSE(WEEKDAY(A3),"Sun","Mon","Tus","Wed","Thu","Fri","Sat")

    Тут WEEKDAY вяртае парадкавы нумар ад 1 (нд) да 7 (суб ) і ВЫБРАЦЬ выбірае адпаведнае значэнне са спісу. Паколькі дата ў A3 (серада) адпавядае 4, CHOOSE выводзіць «Ср», якое з'яўляецца 4-м значэннем у спісе.

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

    Парада. Яшчэ адзін просты спосаб пераўтварыць дату ў назву дня тыдня - прымяніць уласны фармат даты. Напрыклад, у фармаце кода "ддд, мммм д, гггг" дата будзе адлюстроўвацца як " Пятніца, 3 студзеня 2025 г. ", а "дддд" будзе паказваць толькі " Пятніца " .

    Формула WEEKDAY Excel для пошуку і фільтрацыі працоўных і выхадных дзён

    Калі вы маеце справу з доўгім спісам дат, вы можаце ведаць, якія з іх з'яўляюцца працоўнымі, а якія выхаднымі.

    Каб вызначыць выхадныя і працоўныя дні ў Excel, стварыце аператар IF з укладзенай функцыяй WEEKDAY. Напрыклад:

    =IF(WEEKDAY(A3, 2)<6, "Workday", "Weekend")

    Гэтая формула пераходзіць у ячэйку A3 і капіюецца ў столькі ячэек, колькі неабходна.

    У формуле WEEKDAY вы задаеце return_type да 2, што адпавядае тыдню з пн па нядзелю, дзе панядзелак з'яўляецца днём 1. Такім чынам, калі нумар будняга дня меншы за 6 (з панядзелка па пятніцу), формула вяртае "Рабочы дзень", у адваротным выпадку - "Выхадны".

    Каб фільтраваць выхадныя ці працоўныя дні , прымяніце фільтр Excel да вашага набору даных (укладка Даныя > Фільтр ) і выберыце «Выхадныя» або "Працоўны дзень".

    На скрыншоце ніжэй у нас адфільтраваны працоўныя дні, таму бачныя толькі выхадныя:

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

    Напрыклад, каб разглядаць суботу і Панядзелак у якасці выходных, усталюйце для return_type значэнне 12, так што вы атрымаеце тып тыдня "З аўторка (1) па панядзелак (7)":

    =IF(WEEKDAY(A2, 12)<6, "Workday", "Weekend")

    Як вылучыць працоўныя дні ў выхадныя дні і ў Excel

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

    Каб вылучыць выхадныя (суботу і нядзелю):

    =WEEKDAY($A2, 2)<6

    Каб вылучыць працоўныя дні (панядзелак - пятніца):

    =WEEKDAY($A2, 2)>5

    Дзе A2 - верхняя левая ячэйка абранага дыяпазону.

    Каб наладзіць правіла ўмоўнага фарматавання, крокі:

    1. Выберыце спіс дат (A2:A15 у нашым выпадку).
    2. На ўкладцы Галоўная , у групе Стылі націсніце Умоўнае фарматаванне > Новае правіла .
    3. У дыялогавым акне Новае правіла фарматавання абярыце Выкарыстоўваць формулу, каб вызначыць, якія ячэйкі адфарматаваць .
    4. У полі Фарматаваць значэнні, дзе гэтая формула праўдзівая, увядзіце вышэйзгаданую формулу для выхадных або буднія дні.
    5. Націсніце кнопку Фарматаваць і абярыце патрэбны фармат.
    6. Націсніце двойчы ОК , каб захаваць змены і закрыць дыялогавае вокна.

    Для атрымання падрабязнай інфармацыі аб кожным кроку, калі ласка, гл. Як наладзіць умоўнае фарматаванне з формулай.

    Вынік выглядае даволі прыгожа, ці не так?

    Як падлічыць працоўныя дні і выхадныя ў Excel

    Каб атрымаць колькасць будных і выхадных дзён у спісе дат, вы можаце выкарыстоўваць функцыю WEEKDAY у спалучэнні з SUM. Напрыклад:

    Каб падлічыць выхадныя , формула ў D3:

    =SUM(--(WEEKDAY(A3:A20, 2)>5))

    Каб падлічыць буднія дні ,формула ў D4 прымае наступны выгляд:

    =SUM(--(WEEKDAY(A3:A20, 2)<6))

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

    Як працуюць гэтыя формулы:

    Функцыя WEEKDAY з return_type усталяваным у 2 вяртае нумар дня ад 1 (панядзелак) да 7 (нд ) для кожнай даты ў дыяпазоне A3:A20. Лагічны выраз правярае, калі вернутыя лікі большыя за 5 (для выхадных) або меншыя за 6 (для працоўных дзён). Вынікам гэтай аперацыі з'яўляецца масіў значэнняў TRUE і FALSE.

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

    Падказка. Каб вылічыць будні паміж дзвюма датамі , выкарыстоўвайце функцыю NETWORKDAYS або NETWORKDAYS.INTL.

    Калі будны дзень, то, калі субота ці нядзеля, то

    Нарэшце, давайце абмяркуем крыху больш канкрэтны выпадак, які паказвае, як вызначыць дзень тыдня, і калі гэта субота ці нядзеля, то зрабіць што-небудзь, калі дзень будні, то зрабіць што-небудзь яшчэ.

    IF(WEEKDAY( cell , 2)> 5, if_weekend_then , if_weekday_then )

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

    • У аргумент logical_test укладзіце функцыю WEEKDAY, якая правярае, ці з'яўляецца дадзены дзень працоўным або выхадным.
    • У аргументе value_if_true памножце колькасць працоўных гадзін на стаўку выходных (G4).
    • У аргументе value_if_false памножце колькасць працоўных гадзін па стаўцы працоўнага дня (G3).

    Поўная формула ў D3 мае наступны выгляд:

    =IF(WEEKDAY(B3, 2)>5, C3*$G$4, C3*$G$3)

    Каб формула правільна скапіявалася ў ячэйкі ніжэй, не забудзьцеся зафіксаваць адрасы ячэйкі хуткасці знакам $ (напрыклад, $G$4).

    Функцыя WEEKDAY не працуе

    Як правіла, формула WEEKDAY можа вяртаць дзве распаўсюджаныя памылкі:

    #VALUE! памылка ўзнікае, калі:

    • Serial_number або return_type не лікавы.
    • Serial_number па-за падтрымліваецца дыяпазон дат (ад 1900 да 9999).

    #NUM! памылка ўзнікае, калі return_type выходзіць за межы дазволенага дыяпазону (1-3 або 11-17).

    Вось як выкарыстоўваць функцыю WEEKDAY у Excel для маніпулявання днямі тыдня. У наступным артыкуле мы вывучым функцыі Excel для працы з вялікімі адзінкамі часу, такімі як тыдні, месяцы і гады. Заставайцеся з намі і дзякуй за чытанне!

    Практычны сшытак для спампоўкі

    Формула WEEKDAY у Excel - прыклады (.xlsxфайл)

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