Wyznaczenie daty przypadającej po określonej liczbie dni liczonej od innej daty otrzymujemy poprzez dodanie do daty liczby. Takie obliczenia są oparte na kalendarzu systemowym i wyznaczają nową datę zliczając wszystkie dni. W przypadku kiedy chcemy wyznaczyć nową datę, po określonej liczbie dni, ale uwzględniając tylko dni robocze powinniśmy posłużyć się funkcjami: DZIEŃ.ROBOCZY lub DZIEŃ.ROBOCZY.NIESTAND
Funkcja DZIEŃ.ROBOCZY wyznacza datę na podstawie liczby dni roboczych jakie zostają doliczone do daty bazowej, nie biorąc pod uwagę weekendów (sobota i niedziela) oraz świąt (jeżeli takie ustawimy). Składnia funkcji DZIEŃ.ROBOCZY:
DZIEŃ.ROBOCZY(data_pocz; dni; [święta])
gdzie:
- data_pocz – data bazowa, od której będą odliczane kolejne dni,
- dni – argument oznaczający liczbę dni jakie będą dodane/odjęte od daty początkowej; liczba dodatnia wyznaczy datę przyszłą, liczba ujemna – datę przeszłą,
- święta – argument opcjonalny; argument zawierający konkretną datę lub daty, które mają zostać pominięte podczas zliczania dni; każda data powinna zostać ujęta w osobny cudzysłów; w przypadku gdy argument zawiera więcej niż jedną datę należy każdą ująć w cudzysłów oraz rozdzielić je średnikami, dodatkowo cały trzeci argument należy ująć w nawiasy klamrowe; w przypadku pominięcia argumentu pominięte zostaną tylko weekendy, bez dodatkowych świąt.
W przypadku, kiedy chcielibyśmy dodatkowo ingerować w sposób odliczania dni poprzez określenie jakie dni tygodnia mają być cyklicznie traktowane jako wolne, powinniśmy użyć funkcji DZIEŃ.ROBOCZY.NIESTAND. Składnia tej funkcji wygląda następująco:
DZIEŃ.ROBOCZY.NIESTAND(data_pocz; dni; [weekend]; [święta])
gdzie:
- data_początkowa – data bazowa, od której odliczane będą dni,
- dni – liczba dni odliczana od daty bazowej; użycie liczby ujemnej spowoduje, że wynik funkcji będzie datą przeszłą, liczba dodatnia sprawi, ze wynikiem będzie data przyszła,
- weekend – argument opcjonalny za pomocą którego oznaczamy, które dni w każdym z tygodni mają zostać uznane za wolne; argument określamy za pomocą specjalnych oznaczeń (oznaczenia są identyczne jak w przypadku funkcji DNI.ROBOCZE.NIESTAND); w przypadku pominięcia argumentu cyklicznymi dniami wolnymi będą sobota oraz niedziela,
- święta – argument opcjonalny; zasada działania identyczna jak w przypadku funkcji DZIEŃ.ROBOCZY, tzn. wpisujemy konkretną datę lub daty, które mają zostać usunięte z zakresu określonego za pomocą argumentu dni; w przypadku pominięcia argumentu zostaną odliczone wszystkie dni poza weekendami.