Excel WORKDAY un NETWORKDAYS funkcijas darba dienu aprēķināšanai

  • Dalīties Ar Šo
Michael Brown

Šajā īsajā pamācībā ir izskaidrota Excel NETWORKDAYS un WORKDAY funkciju izmantošana, lai aprēķinātu darba dienas ar pielāgotiem nedēļas nogales parametriem un brīvdienām.

Microsoft Excel nodrošina divas funkcijas, kas īpaši paredzētas darba dienu aprēķināšanai - WORKDAY un NETWORKDAYS.

Portāls DARBA DIENA funkcija atgriež datumu N darba dienu nākotnē vai pagātnē, un to var izmantot, lai pievienotu vai atņemtu darba dienas norādītajam datumam.

Izmantojot NETWORKDAYS funkciju, varat aprēķināt darba dienu skaitu starp diviem norādītajiem datumiem.

Programmā Excel 2010 un jaunākās versijās ir pieejamas jaudīgākas iepriekš minēto funkciju modifikācijas WORKDAY.INTL un NETWORKDAYS.INTL, kas ļauj noteikt, kuras un cik dienas ir nedēļas nogales dienas.

Tagad aplūkosim tuvāk katru funkciju un redzēsim, kā to var izmantot, lai aprēķinātu darba dienas Excel darblapās.

    Excel WORKDAY funkcija

    Excel WORKDAY funkcija atgriež datumu, kas ir noteiktu darba dienu skaitu pirms vai pirms sākuma datuma. Tā izslēdz brīvdienas, kā arī jebkuras norādītās brīvdienas.

    WORKDAY funkcija ir paredzēta darba dienu, atskaites punktu un termiņu aprēķināšanai, pamatojoties uz standarta darba kalendāru, kur sestdiena un svētdiena ir nedēļas nogales dienas.

    WORKDAY ir iebūvēta funkcija programmā Excel 2007 - 365. Agrākās versijās ir jāiedarbina Analysis ToolPak.

    Izmantojot WORKDAY programmā Excel, ir jāievada šādi argumenti:

    DARBA DIENA(sākuma_datums, dienas, [brīvdienas])

    Pirmie 2 argumenti ir obligāti, bet pēdējais arguments nav obligāts:

    • Sākuma_datums - datumu, no kura sākt skaitīt darbdienas.
    • Dienas - darba dienu skaits, kas jāpieskaita datumam start_date vai jāatņem no tā. Pozitīvs skaitlis norāda nākotnes datumu, negatīvs skaitlis norāda pagātnes datumu.
    • Brīvdienas - fakultatīvs saraksts ar datumiem, kas nav uzskatāmi par darba dienām. Tas var būt vai nu šūnu diapazons, kas satur datumus, kurus vēlaties izslēgt no aprēķiniem, vai arī masīva konstante, kurā norādīti datumus raksturojošie kārtas numuri.

    Tagad, kad esat iepazinušies ar pamatiem, aplūkosim, kā Excel darblapās varat izmantot funkciju WORKDAY.

    Kā izmantot WORKDAY, lai pievienotu / atņemtu darba dienas datumam

    Lai aprēķinātu darba dienas programmā Excel, ievērojiet šos vienkāršos noteikumus:

    • Uz pievienot darba dienās, ievadiet pozitīvu skaitli kā dienas formulas WORKDAY arguments.
    • Uz atņemt darba dienās izmantojiet negatīvu skaitli dienas arguments.

    Pieņemsim, ka šūnā A2 ir sākuma datums, šūnās B2:B5 - brīvdienu saraksts, un jūs vēlaties noskaidrot 30 darba dienu datumus nākotnē un pagātnē. To var izdarīt, izmantojot šādas formulas:

    Lai sākuma datumam pieskaitītu 30 darba dienas, izņemot brīvdienas B2:B5:

    =DARBA DIENA(A2, 30, B2:B5)

    Lai atņemtu 30 darba dienas no sākuma datuma, izņemot brīvdienas B2:B5:

    =DARBA DIENA(A2, -30, B2:B5)

    Darba dienu aprēķināšana, pamatojoties uz pašreizējais datums , kā sākuma datumu izmantojiet funkciju TODAY():

    Lai šodienas datumam pievienotu 30 darba dienas:

    =DARBA DIENA(ŠODIEN(), 30)

    Lai no šodienas datuma atņemtu 30 darba dienas:

    =DARBA DIENA(ŠODIEN(), -30)

    Lai sākuma datumu ievadītu tieši formulā, izmantojiet funkciju DATUMS:

    =DARBA DIENA(DATE(2015,5,6), 30)

    Tālāk redzamajā ekrānšāviņas attēlā ir parādīti visu šo un vēl dažu DARBA DIENAS formulu rezultāti:

    Protams, varat ievadīt darba dienu skaitu, ko pievienot/atņemt no sākuma datuma kādā šūnā, un pēc tam atsaukties uz šo šūnu savā formulā. Piemēram:

    =DARBA DIENA(A2, C2)

    kur A2 ir sākuma datums un C2 ir dienu skaits, kas nav nedēļas nogale un kas ir aiz (negatīvi skaitļi) vai pirms (pozitīvi skaitļi) sākuma datuma, bez brīvdienām, kuras jāizslēdz.

    Padoms. Programmās Excel 365 un 2021 varat izmantot WORKDAY kombinācijā ar SEQUENCE, lai ģenerētu darba dienu sēriju.

    Excel funkcija WORKDAY.INTL

    WORKDAY.INTL ir jaudīgāka WORKDAY funkcijas modifikācija, kas darbojas ar pielāgotie nedēļas nogales parametri . Tāpat kā WORKDAY, tas atgriež datumu, kas ir noteikts darba dienu skaits nākotnē vai pagātnē, bet ļauj noteikt, kuras nedēļas dienas uzskatāmas par nedēļas nogales dienām.

    Funkcija WORKDAY.INTL tika ieviesta programmā Excel 2010, tāpēc tā nav pieejama iepriekšējās Excel versijās.

    Excel funkcijas WORKDAY.INTL sintakse ir šāda:

    WORKDAY.INTL(start_date, dienas, [nedēļas nogale], [brīvdienas])

    Pirmie divi argumenti ir obligāti un ir līdzīgi WORKDAY argumentiem:

    Sākuma_datums - sākotnējais datums.

    Dienas - darba dienu skaits pirms (negatīva vērtība) vai pēc sākuma datuma (pozitīva vērtība). dienas arguments ir norādīts kā decimālskaitlis, tas tiek saīsināts līdz veselam skaitlim.

    Pēdējie divi argumenti nav obligāti:

    Nedēļas nogale - norāda, kuras darba dienas jāuzskata par nedēļas nogales dienām. Tas var būt skaitlis vai virkne, kā parādīts turpmāk.

    Numurs Nedēļas nogales dienas
    1 vai izlaists Sestdiena, svētdiena
    2 Svētdiena, pirmdiena
    3 Pirmdiena, otrdiena
    4 Otrdiena, trešdiena
    5 Trešdiena, ceturtdiena
    6 Ceturtdiena, piektdiena
    7 Piektdiena, sestdiena
    11 Tikai svētdienās
    12 Tikai pirmdiena
    13 Tikai otrdien
    14 Tikai trešdien
    15 Tikai ceturtdien
    16 Tikai piektdien
    17 Tikai sestdien

    Nedēļas nogales virkne - septiņu 0 un 1 virkne, kas apzīmē septiņas nedēļas dienas, sākot ar pirmdienu. 1 apzīmē ne darba dienu, bet 0 - darba dienu. Piemēram:

    • "0000011" - sestdiena un svētdiena ir brīvdienas.
    • "1000001" - pirmdiena un svētdiena ir brīvdienas.

    No pirmā acu uzmetiena nedēļas nogales virknes var šķist lieki, taču man personīgi šī metode patīk vairāk, jo nedēļas nogales virkni var izveidot "uzreiz", neatceroties nekādus skaitļus.

    Brīvdienas - fakultatīvs saraksts ar datumiem, kurus vēlaties izslēgt no darba dienu kalendāra. Tas var būt šūnu diapazons, kas satur datumus, vai masīva konstante, kurā ir virknes vērtības, kas apzīmē šos datumus.

    WORKDAY.INTL izmantošana programmā Excel - formulas piemēri

    Nu, diezgan liela daļa teorijas, ko tikko pārrunājām, var šķist diezgan sarežģīta un mulsinoša, taču, izmēģinot formulas, viss būs ļoti vienkārši.

    Izmantojot mūsu datu kopu ar sākuma datumu šūnā A2 un brīvdienu sarakstu šūnās A5:A8, aprēķināsim darba dienas ar pielāgotām brīvdienām.

    Uz pievienot 30 darba dienas līdz sākuma datumam, piektdiena un sestdiena tiek uzskatītas par brīvdienām, un brīvdienas A5:A8 nav iekļautas:

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

    vai

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

    Uz atņemt 30 darba dienas no sākuma datuma, svētdienas un pirmdienas tiek uzskatītas par brīvdienām, un brīvdienas A5:A8 nav iekļautas:

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

    vai

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

    Lai pievienotu 10 darba dienas pašreizējais datums , svētdiena ir vienīgā nedēļas nogales diena, bez brīvdienām:

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

    vai

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

    Jūsu Excel lapā formulas var izskatīties līdzīgi:

    Piezīme. Gan Excel WORKDAY, gan WORKDAY.INTL funkcijas atgriež kārtas skaitļus, kas attēlo datumus. Lai šos skaitļus parādītu kā datumus, atlasiet šūnas ar šiem skaitļiem un nospiediet Ctrl+1, lai atvērtu programmu. Šūnu formatēšana dialogs. Par Numurs cilnē atlasiet Datums in the Kategorija sarakstā un izvēlieties vēlamo datuma formātu. Sīkāku informāciju skatiet sadaļā Kā mainīt datuma formātu programmā Excel.

    Excel WORKDAY un WORKDAY.INTL kļūdas

    Ja Excel WORKDAY vai WORKDAY.INTL formula atgriež kļūdu, iemesls, iespējams, ir viens no šiem:

    #NUM! kļūda rodas, ja:

    • kombinācija no start_date un dienas argumenti rada nederīgu datumu vai
    • nedēļas nogale arguments funkcijā WORKDAY.INTL ir nederīgs.

    #VALUE! kļūda rodas, ja:

    • start_date vai jebkuru vērtību brīvdienas nav derīgs datums, vai
    • dienas arguments nav skaitlisks.

    Excel NETWORKDAYS funkcija

    Excel funkcija NETWORKDAYS parāda darba dienu skaitu starp diviem datumiem, izņemot nedēļas nogales un pēc izvēles norādītās brīvdienas.

    Excel NETWORKDAYS sintakse ir intuitīva un viegli iegaumējama:

    NETWORKDAYS(sākuma_datums, beigu_datums, [brīvdienas])

    Pirmie divi argumenti ir obligāti, bet trešais nav obligāts:

    • Sākuma_datums - sākotnējais datums, no kura jāsāk skaitīt darba dienas.
    • End_date - tā perioda beigas, par kuru tiek skaitītas darba dienas.

    Gan sākuma datums, gan beigu datums tiek ieskaitīts atgriezto darba dienu skaitā.

    • Brīvdienas - fakultatīvs saraksts ar brīvdienām, kas nav uzskatāmas par darba dienām.

    Kā lietot NETWORKDAYS programmā Excel - formulas piemērs

    Pieņemsim, ka šūnās A2:A5 ir brīvdienu saraksts, sākuma datumi ir B slejā, beigu datumi - C slejā, un jūs vēlaties uzzināt, cik darba dienu ir starp šiem datumiem. Attiecīgo formulu NETWORKDAYS ir viegli atrast:

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

    Ievērojiet, ka Excel NETWORKDAYS funkcija atgriež pozitīvu vērtību, ja sākuma datums ir mazāks par beigu datumu, un negatīvu vērtību, ja beigu datums ir jaunāks par sākuma datumu (kā 5. rindā):

    Excel NETWORKDAYS.INTL funkcija

    Tāpat kā NETWORKDAYS, arī Excel NETWORKDAYS.INTL funkcija aprēķina darba dienu skaitu starp diviem datumiem, taču ļauj norādīt, kuras dienas ir uzskatāmas par nedēļas nogales dienām.

    Funkcijas NETWORKDAYS.INTL sintakse ir ļoti līdzīga NETWORKDAYS' sintaksei, tikai tai ir papildu parametrs [weekend], kas norāda, kuras nedēļas dienas ir uzskatāmas par brīvdienām.

    NETWORKDAYS.INTL( sākuma_datums, beigu_datums, [nedēļas nogale], [brīvdienas] )

    Portāls nedēļas nogale arguments var pieņemt skaitli vai virkni. Skaitļi un nedēļas nogales virknes ir tieši tādas pašas kā argumentā nedēļas nogale funkcijas WORKDAY.INTL parametrs.

    Funkcija NETWORKDAYS.INTL ir pieejama programmā Excel 365 - 2010.

    NETWORKDAYS.INTL izmantošana programmā Excel - formulas piemērs

    Izmantojot iepriekšējā piemērā sniegto datumu sarakstu, aprēķināsim darba dienu skaitu starp diviem datumiem, kad svētdiena ir vienīgā nedēļas nogales diena. Šim nolūkam ierakstiet skaitli 11 laukā. nedēļas nogale formulas NETWORKDAYS.INTL argumentu vai izveidojiet virkni no sešām 0 un vienas 1 ("0000001"):

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

    Vai

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

    Tālāk redzamais ekrānšāviņš pierāda, ka abas formulas dod pilnīgi identiskus rezultātus.

    Kā izcelt darba dienas programmā Excel

    Izmantojot funkcijas WORKDAY un WORKDAY.INTL, varat ne tikai aprēķināt darba dienas Excel darblapās, bet arī izcelt tās atbilstoši biznesa loģikai. Šim nolūkam izveidojiet nosacījuma formatēšanas noteikumu ar formulu WORKDAY vai WORKDAY.INTL.

    Piemēram, datumu sarakstā B slejā izcelsim tikai tos nākamos datumus, kas atrodas 15 darba dienu laikā no šodienas datuma, izņemot divas brīvdienas šūnās A2:A3. Visredzamākā formula, kas nāk prātā, ir šāda:

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

    Loģiskā testa pirmajā daļā tiek nogriezti pagātnes datumi, t. i., tiek pārbaudīts, vai datums ir vienāds ar vai lielāks par šodienu: $B2>TODAY(). Un otrajā daļā tiek pārbaudīts, vai datums ir ne vairāk kā 15 nedēļas dienas nākotnē, izņemot nedēļas nogales dienas un norādītās brīvdienas: $B2<= DARBA DIENA(TODAY(), 15, $A$2:$A$3)

    Formula izskatās pareiza, bet, kad uz tās pamata izveidosiet noteikumu, sapratīsiet, ka tajā ir norādīti nepareizi datumi:

    Mēģināsim noskaidrot, kāpēc tā notiek. Problēma nav ar funkciju WORKDAY, kā kāds varētu secināt. Funkcija ir pareiza, bet... ko tā patiesībā dara? Tā atgriež datumu 15 darba dienas no šī brīža, izņemot nedēļas nogales dienas (sestdienu un svētdienu) un brīvdienas šūnās A2:A3.

    Labi, un ko dara noteikums, kura pamatā ir šī formula? Tas izceļ VISUS datumus, kas ir vienādi ar vai lielāki par šodienu un mazāki par datumu, ko atgrieza funkcija WORKDAY. Redziet? Visi datumi! Ja nevēlaties iekrāsot brīvdienas un svētku dienas, tad jums ir skaidri jānorāda Excel, lai to nedara. Tātad mēs pievienojam mūsu formulai vēl divus nosacījumus:

    • WEEKDAY funkcija, lai izslēgtu nedēļas nogales: WEEKDAY($B2, 2)<6
    • COUNTIF funkcija, lai izslēgtu brīvdienas: COUNTIF($A$2:$A$3, $B2)=0.

    Kā parādīts zemāk redzamajā ekrānšā attēlā, uzlabotā formula darbojas nevainojami:

    =AND($B2>ŠODIEN(), $B2<=DIENA(ŠODIENA(), 15, $A$2:$A$3), COUNTIF($A$2:$A$3, $B2)=0, WEEKDAY($B2, 2)<6)

    Kā redzat, WORKDAY un WORKDAY.INTL funkcijas ļauj ātri un vienkārši aprēķināt darba dienas programmā Excel. Protams, jūsu reālajā dzīvē formulas, visticamāk, būs sarežģītākas, taču pamatprincipu pārzināšana ļoti palīdz, jo jūs varat atcerēties tikai nelielu svarīgāko lietu kopumu un atvasināt pārējo. Paldies, ka izlasījāt, un ceru redzēt mūsu blogā nākamnedēļ!

    Maikls Brauns ir īpašs tehnoloģiju entuziasts, kura aizraušanās ir sarežģītu procesu vienkāršošana, izmantojot programmatūras rīkus. Ar vairāk nekā desmit gadu pieredzi tehnoloģiju nozarē viņš ir pilnveidojis savas prasmes programmās Microsoft Excel un Outlook, kā arī Google izklājlapās un dokumentos. Maikla emuārs ir veltīts tam, lai dalītos savās zināšanās un pieredzē ar citiem, sniedzot viegli izpildāmus padomus un pamācības produktivitātes un efektivitātes uzlabošanai. Neatkarīgi no tā, vai esat pieredzējis profesionālis vai iesācējs, Maikla emuārs piedāvā vērtīgas atziņas un praktiskus padomus, kā maksimāli izmantot šos būtiskos programmatūras rīkus.