Výpočet doby adherence směny pro danou směnu pomocí VBA v Microsoft Excelu

Anonim

V tomto článku vytvoříme vlastní funkci nebo UDF pro výpočet doby adherence posunu pro agenty.

Nezpracovaná data pro tento příklad se skládají z ID agenta spolu s časem přihlášení a odhlášení každého agenta pro daný den. Také jsme definovali čas začátku a konce směny.

Pro výpočet doby adherence směny jsme použili vlastní funkci „TimeInterval“. Tato funkce bere jako vstup čtyři parametry.

Funkce TimeInterval (přihlášení, odhlášení, ShiftStartTime, ShiftEndTime)

Čas začátku směny je definován v buňce C7 a čas konce směny je definován v buňce C8.

Logické vysvětlení

Abychom mohli vypočítat dobu adherence směny, změnili jsme čas přihlášení na čas začátku směny. Pokud je čas přihlášení dříve než čas zahájení směny, pak bude čas zahájení směny považován za čas přihlášení. Pokud je čas odhlášení pozdě než čas konce směny, pak bude čas ukončení směny považován za čas odhlášení. Rozdíl mezi časem přihlášení a odhlášení nyní poskytne dobu adherence.

Pro kód prosím postupujte níže

 Volba Explicitní funkce TimeInterval (Přihlášení jako dvojité, Odhlášení jako dvojité, _ ShiftStartTime jako dvojité, ShiftEndTime jako dvojité) 'Kontrola, zda je doba přihlášení kratší než doba odhlášení Pokud Přihlášení> Odhlášení pak TimeInterval = "Čas přihlášení by měl být kratší než čas odhlášení" Ukončit Funkce Konec Pokud 'Pokud je přihlášení kratší než čas zahájení směny, pak změna času přihlášení na čas začátku posunu Pokud se přihlásí ShiftEndTime Then Logout = ShiftEndTime TimeInterval = Odhlášení - Funkce ukončení přihlášení 

Pokud se vám tento blog líbil, sdílejte ho se svými přáteli na Facebooku. Také nás můžete sledovat na Twitteru a Facebooku.

Rádi bychom od vás slyšeli, dejte nám vědět, jak můžeme zlepšit naši práci a zlepšit ji pro vás. Napište nám na e -mail