Функциите на Excel WORKDAY и NETWORKDAYS за пресметување на работните денови

  • Споделете Го Ова
Michael Brown

Овој краток туторијал ја објаснува употребата на функциите Excel NETWORKDAYS и WORKDAY за пресметување работни денови со прилагодени параметри за викенд и празници.

Microsoft Excel обезбедува две функции специјално дизајнирани за пресметување работни денови - WORKDAY и NETWORKDAYS.

Функцијата WORKDAY враќа датум N работни дена во иднината или во минатото и можете да ја користите за додавање или одземање работни денови на даден датум.

Користејќи ја функцијата NETWORKDAYS , можете да го пресметате бројот на работни денови помеѓу два датуми што ќе ги наведете.

Во Excel 2010 и понова верзија, достапни се помоќни модификации на горенаведените функции. WORKDAY.INTL и NETWORKDAYS.INTL, кои ви дозволуваат да дефинирате кои и колку денови се денови за викенд.

И сега, да ја разгледаме подетално секоја функција и да видиме како можете да ја користите за пресметување работни денови во вашите работни листови на Excel.

    Excel WORKDAY функцијата

    Функцијата Excel WORKDAY враќа датум кој е даден број на работни денови пред или пред датумот на започнување. Ги исклучува викендите, како и сите празници што ќе ги наведете.

    Функцијата WORKDAY е наменета за пресметување на работните денови, пресвртниците и датумите на достасување врз основа на стандардниот работен календар, а сабота и недела се денови за викенд.

    0> WORKDAY е вградена функција во Excel 2007 - 365. Во претходните верзии, треба да ја овозможите анализатамал сет на суштински работи и извлечете го остатокот. Ви благодарам што прочитавте и се надевам дека ќе видиме на нашиот блог следната недела!

    ToolPak.

    Кога користите WORKDAY во Excel, треба да ги внесете следните аргументи:

    WORKDAY(датум_почеток, денови, [празници])

    Првите 2 аргументи се задолжителни, а последниот е опционален :

    • Start_date - датумот од кој се почнува да се брои работните денови.
    • Денови - бројот на работни денови за додавање/одземање од почеток_датум. Позитивен број враќа иден датум, негативниот број враќа минат датум.
    • Празници - изборна листа на датуми што не треба да се бројат како работни денови. Ова може да биде или опсег на ќелии што ги содржат датумите што сакате да ги исклучите од пресметките или константа на низа од сериските броеви што ги претставуваат датумите.

    Сега кога ги знаете основите, ајде да видиме како може да ја користи функцијата WORKDAY во вашите работни листови на Excel.

    Како да го користите WORKDAY за додавање/одземање работни денови до датумот

    За да ги пресметате работните денови во Excel, следете ги овие едноставни правила:

    • За додавање работни денови, внесете позитивен број како аргумент денови на формулата WORKDAY.
    • За одземање работни денови, користете негативен број во аргументот денови .

    Да претпоставиме дека имате датум на почеток во ќелијата А2, листа на празници во ќелиите B2:B5 и сакате да го дознаете датира 30 работни дена во иднината и минатото. Можете да го направите ова користејќи ги следните формули:

    За да додадете 30 работни дена на датумот на започнување, со исклучок на празниците воB2:B5:

    =WORKDAY(A2, 30, B2:B5)

    За да се одземе 30 работни дена од датумот на започнување, со исклучок на празниците во B2:B5:

    =WORKDAY(A2, -30, B2:B5)

    За да се пресметаат работните денови врз основа на на тековниот датум , користете ја функцијата TODAY() како датум на почеток:

    За да додадете 30 работни дена на денешниот датум:

    =WORKDAY(TODAY(), 30)

    Да одземете 30 работни дена од денешниот датум:

    =WORKDAY(TODAY(), -30)

    За да го внесете датумот на започнување директно на формулата, користете ја функцијата DATE:

    =WORKDAY(DATE(2015,5,6), 30)

    следнава слика од екранот ги прикажува резултатите од сите овие и уште неколку формули WORKDAY:

    И нормално, можете да го внесете бројот на работни денови за додавање/одземање од датумот на започнување во некоја ќелија, а потоа упатете се на таа ќелија во вашата формула. На пример:

    =WORKDAY(A2, C2)

    Каде што A2 е датумот на започнување и C2 е бројот на денови кои не се за викенд зад (негативни бројки) или пред (позитивни броеви) датумот на почеток, без празници за исклучување.

    Совет. Во Excel 365 и 2021, можете да користите WORKDAY во комбинација со SEQUENCE за да генерирате серија работни денови.

    Excel WORKDAY.INTL функцијата

    WORKDAY.INTL е помоќна модификација на WORKDAY функција која работи со приспособени параметри за викенд . Како и WORKDAY, враќа датум што е одреден број работни денови во иднината или во минатото, но ви овозможува да одредите кои денови од неделата треба да се сметаат за денови за викенд.

    Функцијата WORKDAY.INTL беше воведен воExcel 2010 и така не е достапен во претходните верзии на Excel.

    Синтаксата на функцијата Excel WORKDAY.INTL е следна:

    WORKDAY.INTL(датум_почеток, денови, [викенд], [празници])

    Првите два аргументи се потребни и се слични на WORKDAY:

    Start_date - почетниот датум.

    Денови - бројот на работни денови пред (негативна вредност) или по (позитивна вредност) датумот на започнување. Ако аргументот days е даден како децимален број, тој е скратен на цел број.

    Последните два аргумента се опционални:

    Викенд - одредува кои работни денови треба да бидат сметани како денови за викенд. Ова може да биде или број или низа, како што е прикажано подолу.

    Број Денови за викенд
    1 или испуштено сабота, недела
    2 недела, понеделник
    3 Понеделник, вторник
    4 вторник, среда
    5 среда, четврток
    6 четврток, петок
    7 петок, сабота
    11 само во недела
    12 само понеделник
    13 Само вторник
    14 само среда
    15 само четврток
    16 само петок
    17 само сабота

    Викенд низа - серија од седум 0 и 1 кои претставуваат седум дена во неделата,почнувајќи од понеделник. 1 претставува неработен ден, а 0 претставува работен ден. На пример:

    • „0000011“ - сабота и недела се викенди.
    • „1000001“ - понеделник и недела се викенди.

    На прв поглед , низите за викенд може да изгледаат излишни, но мене лично овој метод повеќе ми се допаѓа бидејќи можете да направите низа за викенд без да морате да запомните броеви.

    Празници - изборна листа на датуми сакате да го исклучите од календарот на работните денови. Ова може да биде опсег на ќелии што ги содржат датумите или константа на низа од сериските вредности што ги претставуваат тие датуми.

    Користење WORKDAY.INTL во Excel - примери на формула

    Па, прилично голема количина теоријата што штотуку ја дискутиравме може да изгледа доста комплицирана и збунувачка, но обидот за формули ќе ги направи работите навистина лесни.

    На нашата база на податоци, со датум на почеток во ќелијата А2 и список на празници во А5 :A8, ајде да ги пресметаме работните денови со приспособени викенди.

    За да додадете 30 работни денови на датумот на започнување, петок и сабота се сметаат како викенди и празници во A5:A8 исклучени:

    =WORKDAY.INTL(A2, 30, 7, A5:A8)

    или

    =WORKDAY.INTL(A2, 30, "0000110", A5:A8)

    За одземање 30 работни дена од датумот на започнување, недела и понеделник се сметаат како викенди и празници во A5:A8 исклучени :

    =WORKDAY.INTL(A2, -30, 2, A5:A8)

    или

    =WORKDAY.INTL(A2, -30, "1000001", A5:A8)

    За да додадете 10 работни дена на тековниот датум , неделата е единствениот ден за викенд, брпразници:

    =WORKDAY.INTL(TODAY(), 10, 11)

    или

    =WORKDAY.INTL(A2, 10, "0000001")

    Во вашиот лист Excel, формулите може да изгледаат слично на ова:

    Забелешка. И двете функции на Excel WORKDAY и WORKDAY.INTL враќаат сериски броеви што ги претставуваат датумите. За да ги прикажете тие броеви како датуми, изберете ги ќелиите со броевите и притиснете Ctrl+1 за да го отворите дијалогот Форматирај ќелии . На картичката Број , изберете Датум во списокот Категорија и изберете го саканиот формат на датум. За деталните чекори, погледнете Како да го смените форматот на датумот во Excel.

    Грешки на Excel WORKDAY и WORKDAY.INTL

    Ако вашата формула на Excel WORKDAY или WORKDAY.INTL врати грешка, причината веројатно е една од следниве:

    # NUM! се појавува грешка ако:

    • комбинација од аргументите start_date и days резултира со неважечки датум или
    • weekend аргумент во функцијата WORKDAY.INTL е неважечка .

    #VALUE! се појавува грешка ако:

    • start_date или која било вредност во holidays не е валиден датум, или
    • days аргумент е ненумерички.

    Excel NETWORKDAYS функција

    Функцијата NETWORKDAYS во Excel го враќа бројот на работни денови помеѓу два датума, со исклучок на викендите и, по избор, празниците наведете.

    Синтаксата на Excel NETWORKDAYS е интуитивна и лесна за паметење:

    NETWORKDAYS(датум_почеток, крај_датум, [празници])

    Првите два аргумента се задолжителни, а третиот енезадолжително:

    • Датум_почеток - почетен датум од кој ќе почне да се бројат работните денови.
    • Крај_датум - крајот на периодот за кој ги броите работните денови.

    И датумот на почеток и крајниот датум се бројат во вратениот број на работни денови.

    • Празници - изборен список на празници кои не треба да се бројат како работни денови.

    Како да користите NETWORKDAYS во Excel - пример формула

    Да речеме дека имате листа на празници во ќелиите A2:A5, датуми на почеток во колоната Б, датуми на завршување во колона В и сакате да знаете колку работни денови се помеѓу овие датуми. Лесно е да се открие соодветната формула NETWORKDAYS:

    =NETWORKDAYS(B2, C2, $A$2:$A$5)

    Забележете дека функцијата Excel NETWORKDAYS враќа позитивна вредност кога датумот на започнување е помал од датумот на завршување и негативна вредност ако крајниот датум е понов од датумот на почеток (како во редот 5):

    Excel NETWORKDAYS.INTL функција

    Како NETWORKDAYS, функцијата NETWORKDAYS.INTL на Excel го пресметува бројот на работни денови помеѓу два датума, но ви овозможува да одредите кои денови треба да се бројат како денови за викенд.

    Синтаксата на функцијата NETWORKDAYS.INTL е многу слична на NETWORKDAYS', освен што има дополнителна [викенд ] параметар кој покажува кои денови од неделата треба да се бројат како викенди.

    NETWORKDAYS.INTL( почеток_датум, крај_датум, [викенд], [празници] )

    Аргументот weekend може да прифатиили број или низа. Броевите и низите за викенд се сосема исти како во параметарот weekend на функцијата WORKDAY.INTL.

    Функцијата NETWORKDAYS.INTL е достапна во Excel 365 - 2010 година.

    Користење NETWORKDAYS.INTL во Excel - пример со формула

    Користејќи го списокот со датуми од претходниот пример, да го пресметаме бројот на работни денови помеѓу два датуми, а неделата е единствениот викенд. За ова, внесете го бројот 11 во аргументот weekend на формулата NETWORKDAYS.INTL или направете низа од шест 0 и еден 1 („0000001“):

    =NETWORKDAYS.INTL(B2, C2, 11, $A$2:$A$5)

    Или

    =NETWORKDAYS.INTL(B2, C2, "0000001", $A$2:$A$5)

    Следната слика од екранот докажува дека и двете формули даваат апсолутно идентични резултати.

    Како да ги нагласите работните денови во Excel

    Користејќи функциите WORKDAY и WORKDAY.INTL, не само што можете да ги пресметате работните денови во вашите работни листови на Excel, туку и да ги потенцирате како што бара вашата деловна логика. За ова, создавате правило за условно форматирање со формулата WORKDAY или WORKDAY.INTL.

    На пример, во списокот со датуми во колоната Б, да ги истакнеме само идните датуми кои се во рок од 15 работни дена од денешниот датум , со исклучок на два празници во ќелиите A2:A3. Најочигледната формула што ми паѓа на ум е следнава:

    =AND($B2>TODAY(), $B2<=WORKDAY(TODAY(), 15, $A$2:$A$3))

    Првиот дел од логичкиот тест ги прекинува минатите датуми, т.е. проверувате дали датумот е еднаков или поголем од денешниот : $B2>ДЕНЕС(). А во вториот дел проверувашдали датумот не е повеќе од 15 работни денови во иднина, со исклучок на деновите од викендот и наведените празници: $B2<=WORKDAY(TODAY(), 15, $A$2:$A$3)

    Формулата изгледа точна, но штом ќе создадете правило врз основа на тоа, ќе сфатите дека означува погрешно датуми:

    Ајде да се обидеме да откриеме зошто се случува тоа. Проблемот не е во функцијата WORKDAY, како што некој може да заклучи. Функцијата е во право, но... што всушност прави? Го враќа датумот за 15 работни дена од сега, со исклучок на деновите од викендот (сабота и недела) и празниците во ќелиите A2:A3.

    Во ред, и што прави правилото засновано на оваа формула? Ги истакнува СИТЕ датуми кои се еднакви или поголеми од денешниот и помали од датумот вратен од функцијата WORKDAY. Ти гледаш? Сите датуми! Ако не сакате да ги обоите викендите и празниците, тогаш треба експлицитно да му кажете на Excel да не го прави тоа. Значи, додаваме уште два услови на нашата формула:

    • Функцијата WEEKDAY за исклучување викенди: WEEKDAY($B2, 2)<6
    • Функцијата COUNTIF за исклучување празници : COUNTIF($A$2:$A$3, $B2)=0

    Како што е прикажано на сликата подолу од екранот, подобрената формула функционира совршено:

    =AND($B2>TODAY(), $B2<=WORKDAY(TODAY(), 15, $A$2:$A$3), COUNTIF($A$2:$A$3, $B2)=0, WEEKDAY($B2, 2)<6)

    Како што гледате, функциите WORKDAY и WORKDAY.INTL го прават пресметувањето на работните денови во Excel брзо и лесно. Се разбира, вашите формули од реалниот живот веројатно ќе бидат пософистицирани, но познавањето на основите помага неизмерно, бидејќи можете да запомните само

    Мајкл Браун е посветен технолошки ентузијаст со страст за поедноставување на сложените процеси користејќи софтверски алатки. Со повеќе од една деценија искуство во технолошката индустрија, тој ги усоврши своите вештини во Microsoft Excel и Outlook, како и Google Sheets и Docs. Блогот на Мајкл е посветен на споделување на своето знаење и експертиза со другите, обезбедувајќи лесни за следење совети и упатства за подобрување на продуктивноста и ефикасноста. Без разлика дали сте искусен професионалец или почетник, блогот на Мајкл нуди вредни сознанија и практични совети за да го извлечете максимумот од овие основни софтверски алатки.