Kazalo
V tem kratkem priročniku je razložena uporaba funkcij Excel NETWORKDAYS in WORKDAY za izračun delovnih dni s parametri po meri za vikende in praznike.
Microsoft Excel ponuja dve funkciji, ki sta posebej zasnovani za izračun dni v tednu - WORKDAY in NETWORKDAYS.
Spletna stran DELOVNI DAN funkcija vrne datum N delovnih dni v prihodnosti ali preteklosti in jo lahko uporabite za dodajanje ali odvzemanje delovnih dni na danem datumu.
Uporaba NETWORKDAYS lahko izračunate število delovnih dni med dvema datumoma, ki ju določite.
V Excelu 2010 in novejših sta na voljo zmogljivejši različici zgornjih funkcij, WORKDAY.INTL in NETWORKDAYS.INTL, s katerima lahko določite, kateri in koliko dni so vikendi.
Zdaj pa si podrobneje oglejmo vsako funkcijo in preverimo, kako jo lahko uporabite za izračun delovnih dni v delovnih listih programa Excel.
Excelova funkcija WORKDAY
Excelova funkcija WORKDAY vrne datum, ki je določeno število delovnih dni pred začetnim datumom ali pred njim. Izključuje vikende in morebitne praznike, ki ste jih določili.
Funkcija WORKDAY je namenjena izračunavanju delovnih dni, mejnikov in datumov zapadlosti na podlagi standardnega delovnega koledarja, pri čemer sta sobota in nedelja dneva vikenda.
Funkcija WORKDAY je vgrajena funkcija v Excelu 2007 - 365. V prejšnjih različicah morate omogočiti paket orodij za analizo.
Pri uporabi programa WORKDAY v Excelu morate vnesti naslednje argumente:
WORKDAY(datum_začetka, dnevi, [prazniki])Prva dva argumenta sta obvezna, zadnji pa je neobvezen:
- Start_date - datum, od katerega se začne štetje delovnih dni.
- Dnevi - število delovnih dni, ki se prišteje/odšteje od datuma start_date. Pozitivno število vrne prihodnji datum, negativno število vrne pretekli datum.
- Počitnice - neobvezen seznam datumov, ki se ne smejo šteti kot delovni dnevi. To je lahko razpon celic z datumi, ki jih želite izključiti iz izračunov, ali konstanta matrike zaporednih številk, ki predstavljajo datume.
Zdaj, ko poznate osnove, si poglejmo, kako lahko funkcijo WORKDAY uporabite v delovnih listih programa Excel.
Kako uporabiti WORKDAY za dodajanje/odštevanje delovnih dni k datumu
Če želite v Excelu izračunati število delovnih dni, upoštevajte naslednja preprosta pravila:
- Na naslov dodaj delovnih dni, vnesite pozitivno število kot dni argument formule WORKDAY.
- Na naslov odšteti delovnih dni, uporabite negativno število v dni argument.
Recimo, da imate datum začetka v celici A2, seznam praznikov v celicah B2:B5 in želite ugotoviti datume 30 delovnih dni v prihodnosti in preteklosti. To lahko storite z naslednjimi formulami:
Če želite začetnemu datumu dodati 30 delovnih dni, brez praznikov v B2:B5:
=DELOVNI DAN(A2, 30, B2:B5)
Od začetnega datuma odštejete 30 delovnih dni, brez praznikov v B2:B5:
=DELOVNI DAN(A2, -30, B2:B5)
Izračun dni v tednu na podlagi trenutni datum , kot začetni datum uporabite funkcijo TODAY():
Če želite današnjemu datumu dodati 30 delovnih dni:
=DELOVNI DAN(DANES(), 30)
Od današnjega datuma odštejete 30 delovnih dni:
=DELOVNI DAN(DANES(), -30)
Če želite v formulo neposredno vnesti začetni datum, uporabite funkcijo DATA:
=DELOVNI DAN(DATE(2015,5,6), 30)
Naslednja slika zaslona prikazuje rezultate vseh teh in še nekaj drugih formul WORKDAY:
Seveda lahko število delovnih dni, ki jih želite prišteti ali odšteti od začetnega datuma, vnesete v neko celico in se nato na to celico sklicujete v formuli. Na primer:
=DELOVNI DAN(A2, C2)
Kjer je A2 začetni datum, C2 pa je število dni brez konca tedna za začetnim datumom (negativne številke) ali pred njim (pozitivne številke), brez praznikov, ki jih je treba izključiti.
Nasvet. V Excelu 365 in 2021 lahko uporabite WORKDAY v kombinaciji s SEQUENCE, da ustvarite niz delovnih dni.
Funkcija Excel WORKDAY.INTL
WORKDAY.INTL je zmogljivejša modifikacija funkcije WORKDAY, ki deluje z parametri vikenda po meri Tako kot WORKDAY vrne datum, ki je določeno število delovnih dni v prihodnosti ali preteklosti, hkrati pa omogoča določitev, kateri dnevi v tednu naj se štejejo za dneve vikenda.
Funkcija WORKDAY.INTL je bila uvedena v Excelu 2010, zato ni na voljo v prejšnjih različicah Excela.
Sintaksa Excelove funkcije WORKDAY.INTL je naslednja:
WORKDAY.INTL(start_date, days, [weekend], [holidays])Prva dva argumenta sta obvezna in sta podobna argumentom WORKDAY:
Start_date - začetni datum.
Dnevi - število delovnih dni pred (negativna vrednost) ali po (pozitivna vrednost) datumu začetka. dni
argument je podan kot decimalno število, se skrajša na celo število.
Zadnja dva argumenta sta neobvezna:
Vikend - določa, kateri dnevi v tednu naj se štejejo kot dnevi vikenda. To je lahko številka ali niz, kot je prikazano spodaj.
Številka | Dnevi ob koncu tedna |
1 ali izpuščeno | sobota, nedelja |
2 | nedelja, ponedeljek |
3 | ponedeljek, torek |
4 | torek, sreda |
5 | Sreda, četrtek |
6 | Četrtek, petek |
7 | petek, sobota |
11 | Samo ob nedeljah |
12 | Samo v ponedeljek |
13 | Samo v torek |
14 | Samo v sredo |
15 | Samo v četrtek |
16 | Samo v petek |
17 | Samo ob sobotah |
Vikend niz - niz sedmih številk 0 in 1, ki predstavljajo sedem dni v tednu, začenši s ponedeljkom. 1 pomeni dela prost dan, 0 pa delovni dan:
- "0000011" - sobota in nedelja sta vikenda.
- "1000001" - ponedeljek in nedelja sta vikenda.
Na prvi pogled se zdi, da so nizi vikendov odveč, vendar mi je ta metoda bolj všeč, saj lahko niz vikendov ustvarite sproti, ne da bi si morali zapomniti številke.
Počitnice - neobvezen seznam datumov, ki jih želite izključiti iz koledarja delovnih dni. To je lahko razpon celic, ki vsebujejo datume, ali polje konstantnih serijskih vrednosti, ki predstavljajo te datume.
Uporaba WORKDAY.INTL v Excelu - primeri formul
Precejšen del teorije, ki smo jo pravkar obravnavali, se morda zdi precej zapleten in zmeden, vendar vam bo uporaba formul zelo olajšala delo.
V našem podatkovnem nizu z začetnim datumom v celici A2 in seznamom praznikov v celicah A5:A8 izračunajmo delovne dni z vikendi po meri.
Na naslov dodajte 30 delovnih dni do datuma začetka dela, petek in sobota se štejeta za vikend, prazniki v A5:A8 pa so izključeni:
=WORKDAY.INTL(A2, 30, 7, A5:A8)
ali
=WORKDAY.INTL(A2, 30, "0000110", A5:A8)
Na naslov odšteti 30 delovnih dni od datuma začetka, nedelja in ponedeljek se štejeta kot vikend, prazniki v A5:A8 so izključeni:
=WORKDAY.INTL(A2, -30, 2, A5:A8)
ali
=WORKDAY.INTL(A2, -30, "1000001", A5:A8)
Če želite dodati 10 delovnih dni k trenutni datum , nedelja je edini dan vikenda, brez praznikov:
=WORKDAY.INTL(TODAY(), 10, 11)
ali
=WORKDAY.INTL(A2, 10, "0000001")
V Excelovem listu so formule lahko videti podobno:
Opomba: Excelovi funkciji WORKDAY in WORKDAY.INTL vračata serijske številke, ki predstavljajo datume. Če želite, da se te številke prikažejo kot datumi, izberite celice s številkami in pritisnite Ctrl+1, da odprete okno Oblikovanje celic pogovorno okno. V Številka izberite zavihek Datum v Kategorija in izberite želeno obliko datuma. Za podrobne korake glejte Kako spremeniti obliko datuma v Excelu.
Excelove napake WORKDAY in WORKDAY.INTL
Če se v Excelovi formuli WORKDAY ali WORKDAY.INTL pojavi napaka, je razlog verjetno eden od naslednjih:
#NUM! Napaka se pojavi, če:
- kombinacija
start_date
in .dni
argumentov je na voljo neveljaven datum ali vikend
argument v funkciji WORKDAY.INTL je neveljaven.
#VALUE! Napaka se pojavi, če:
start_date
ali katero koli vrednost vpočitnice
ni veljaven datum, alidni
argument ni številski.
Excelova funkcija NETWORKDAYS
Funkcija NETWORKDAYS v Excelu vrne število delovnih dni med dvema datumoma, brez vikendov in po želji tudi praznikov, ki jih določite.
Sintaksa programa Excel NETWORKDAYS je intuitivna in enostavna za zapomnitev:
NETWORKDAYS(start_date, end_date, [holidays])Prva dva argumenta sta obvezna, tretji pa neobvezen:
- Start_date - začetni datum, od katerega se začnejo šteti delovni dnevi.
- End_date - konec obdobja, za katero štejete delovne dni.
V vrnjenem številu delovnih dni sta upoštevana tako začetni kot končni datum.
- Počitnice - neobvezen seznam praznikov, ki se ne smejo šteti kot delovni dnevi.
Kako uporabljati NETWORKDAYS v Excelu - primer formule
Recimo, da imate seznam praznikov v celicah A2:A5, začetne datume v stolpcu B, končne datume v stolpcu C in želite vedeti, koliko delovnih dni je med temi datumi. Ustrezno formulo NETWORKDAYS je enostavno določiti:
=NETWORKDAYS(B2, C2, $A$2:$A$5)
Opazite, da funkcija Excel NETWORKDAYS vrne pozitivno vrednost, če je začetni datum krajši od končnega datuma, in negativno vrednost, če je končni datum novejši od začetnega datuma (kot v vrstici 5):
Funkcija Excel NETWORKDAYS.INTL
Tako kot funkcija NETWORKDAYS tudi Excelova funkcija NETWORKDAYS.INTL izračuna število delovnih dni med dvema datumoma, vendar lahko določite, kateri dnevi naj se štejejo kot dnevi vikenda.
Sintaksa funkcije NETWORKDAYS.INTL je zelo podobna funkciji NETWORKDAYS, le da ima dodaten parameter [vikend], ki določa, kateri dnevi v tednu naj se štejejo za vikende.
NETWORKDAYS.INTL( start_date, end_date, [weekend], [holidays] ) Spletna stran vikend
argument lahko sprejme številko ali niz. Številke in nizi za vikende so popolnoma enaki kot v vikend
parameter funkcije WORKDAY.INTL.
Funkcija NETWORKDAYS.INTL je na voljo v Excelu 365 - 2010.
Uporaba datoteke NETWORKDAYS.INTL v Excelu - primer formule
Na podlagi seznama datumov iz prejšnjega primera izračunajmo število delovnih dni med dvema datumoma, pri katerih je nedelja edini dan vikenda. Pri tem vnesite številko 11 v polje vikend
v formuli NETWORKDAYS.INTL ali ustvarite niz šestih številk 0 in ene 1 ("0000001"):
=NETWORKDAYS.INTL(B2, C2, 11, $A$2:$A$5)
Ali
=NETWORKDAYS.INTL(B2, C2, "0000001", $A$2:$A$5)
Naslednja slika zaslona dokazuje, da obe formuli dajeta popolnoma enake rezultate.
Kako označiti delovne dni v Excelu
S funkcijama WORKDAY in WORKDAY.INTL lahko v delovnih listih programa Excel ne samo izračunate delovne dni, temveč jih tudi označite, kot zahteva poslovna logika. V ta namen ustvarite pravilo pogojnega oblikovanja s formulo WORKDAY ali WORKDAY.INTL.
Na primer, na seznamu datumov v stolpcu B označimo samo prihodnje datume, ki so v 15 delovnih dneh od današnjega datuma, razen dveh praznikov v celicah A2:A3. Najbolj očitna formula, ki pride na misel, je naslednja:
=AND($B2>TODAY(), $B2<=WORKDAY(TODAY(), 15, $A$2:$A$3))
V prvem delu logičnega preizkusa odrežemo pretekle datume, tj. preverimo, ali je datum enak ali večji od danes: $B2>TODAY(). V drugem delu pa preverimo, ali je datum oddaljen največ 15 delovnih dni v prihodnosti, brez dni ob koncu tedna in določenih praznikov: $B2<= DELOVNI DAN(TODAY(), 15, $A$2:$A$3)
Formula je videti pravilna, vendar ko na njeni podlagi ustvarite pravilo, boste ugotovili, da poudarja napačne datume:
Poskusimo ugotoviti, zakaj se to zgodi. Težava ni v funkciji WORKDAY, kot bi morda kdo sklepal. Funkcija je pravilna, vendar... kaj dejansko naredi? V celicah A2:A3 vrne datum 15 delovnih dni od zdaj, brez dni ob koncu tedna (sobota in nedelja) in praznikov.
In kaj naredi pravilo, ki temelji na tej formuli? Označi VSE datume, ki so enaki ali večji od danes in manjši od datuma, ki ga je vrnila funkcija WORKDAY. Vidite? Vsi datumi! Če ne želite obarvati vikendov in praznikov, morate Excelu to izrecno povedati. Zato naši formuli dodamo še dva pogoja:
- Funkcija WEEKDAY za izključitev vikendov: WEEKDAY($B2, 2)<6
- Funkcija COUNTIF za izključitev praznikov: COUNTIF($A$2:$A$3, $B2)=0
Kot je prikazano na spodnji sliki zaslona, izboljšana formula deluje brezhibno:
=AND($B2>TODAY(), $B2<=WORKDAY(TODAY(), 15, $A$2:$A$3), COUNTIF($A$2:$A$3, $B2)=0, WEEKDAY($B2, 2)<6)
Kot vidite, lahko s funkcijama WORKDAY in WORKDAY.INTL v Excelu hitro in preprosto izračunate število delovnih dni. Seveda bodo vaše formule v resničnem življenju verjetno bolj zapletene, vendar vam poznavanje osnov zelo pomaga, saj si lahko zapomnite le majhen nabor bistvenih stvari, ostalo pa izpeljete. Zahvaljujem se vam za branje in upam, da se naslednji teden vidimo na našem blogu!