Excel-formel: Få arbetstid mellan datum -

Innehållsförteckning

Generisk formel

=NETWORKDAYS(start,end,holidays)*hours

Sammanfattning

För att beräkna det totala antalet arbetstimmar mellan två datum kan du använda en formel baserad på funktionen NÄTVERKSDAGAR, där "start" är startdatum, "slut" är slutdatum, "helgdagar" är ett intervall som inkluderar datum, och "timmar" är antalet arbetstimmar under en arbetsdag. I exemplet som visas är formeln i D7:

=NETWORKDAYS(B7,C7,holidays)*8

där "helgdagar" är namngivna intervall G6: G8.

Förklaring

Denna formel använder funktionen NETWORKDAYS för att beräkna totala arbetsdagar mellan två datum, med hänsyn till helger och (valfritt) helgdagar. Helgdagar, om de tillhandahålls, måste vara ett intervall med giltiga Excel-datum. När totala arbetsdagar är kända multipliceras de helt enkelt med ett fast antal timmar per dag, 8 i exemplet som visas.

NETWORKDAYS-funktionen inkluderar både start- och slutdatum i beräkningen och utesluter både lördag och söndag som standard. Funktionen kommer också att utesluta helgdagar då de tillhandahålls som "helgdag" -argument som ett intervall med giltiga datum.

I de här exemplen som visas använder de två första formlerna funktionen NETWORKDAYS.

D6=NETWORKDAYS(B6,C6)*8 // no holidays D7=NETWORKDAYS(B7,C7,holidays)*8 // holidays provided

Om din arbetsvecka inkluderar andra dagar än måndag till fredag ​​kan du växla till funktionen NETWORKDAYS.INTL, som ger ett "helg" -argument som kan användas för att definiera vilka veckodagar som är arbetsdagar och helgdagar. NETWORKDAYS.INTL kan konfigureras precis som NETWORKDAYS, men det ger ett ytterligare argument som kallas "helg" för att kontrollera vilka dagar i veckan som anses vara arbetsdagar.

De följande fyra formlerna använder funktionen NETWORKDAYS.INTL:

D8=NETWORKDAYS.INTL(B8,C8)*8 // Mon-Fri, no holidays D9=NETWORKDAYS.INTL(B9,C9,11)*8 // Mon-Sat, no holidays D10=NETWORKDAYS.INTL(B10,C10)*8 // M-F, no holidays D11=NETWORKDAYS.INTL(B11,C11,1,holidays)*8 // M-F, w/ holidays

Klicka på funktionsnamnen ovan för att lära dig mer om konfigurationsalternativ.

Anpassat arbetsschema

Denna formel förutsätter att alla arbetsdagar har samma antal arbetstimmar. Om du behöver beräkna arbetstid med ett anpassat schema där arbetstiden varierar beroende på veckodag kan du prova en sådan formel:

=SUMPRODUCT(MID(schedule,WEEKDAY(ROW(INDIRECT(start&":"&end))),1)*ISNA(MATCH(ROW(INDIRECT(start&":"&end)),holidays,0)))

Du hittar en förklaring här.

Intressanta artiklar...