Arkusz czasu Excel. Wynagrodzenie za święto państwowe uzależnione od spełnienia określonych warunków

1

Próbuję stworzyć graficzną kartę Excela, która wykonuje pewne szczególne funkcje.

1) Jeśli mówimy, że środa jest świętem państwowym, jeśli pracownik pracował we wtorek i czwartek (dni po obu stronach święta), ale NIE w środę (święto państwowe), byłby on uprawniony do standardowego wynagrodzenia dziennego (8 godzin w normalnej stawce), np. jeśli jego normalna stawka godzinowa wynosi 4 dolary za godzinę, zapłaciłby za środę 32 dolary, chociaż nie pracował nad nią.

2) Jeśli pracownik pracował we wtorek i czwartek (dni po obu stronach święta) I TAKŻE w środę (święto państwowe), byłby uprawniony do standardowego wynagrodzenia dziennego (8 godzin w normalnej stawce) plus liczba godziny pracował w środę o 1,5 razy więcej niż normalna stawka. np. jeśli jego normalna stawka godzinowa wynosi 4 USD za godzinę, otrzyma on 32 USD za święto publiczne PLUS, jeśli przepracuje 5 godzin w święto, dostanie 5 godzin za 6 USD za godzinę (1,5 razy więcej niż jego normalna stawka godzinowa) TAK ... jego dzienna pensja wynosiłaby 8 standardowych godzin w cenie 4 USD za godzinę = 32 USD PLUS 5 płatnych urlopów w cenie 6 USD za godzinę = 30 USD.

W sumie 62 USD.

3) Jeśli pracownik NIE pracował we wtorek, ale pracował w środę (święto państwowe) I czwartek, po prostu otrzymałby standardową stawkę godzinową za liczbę przepracowanych godzin. Więc jeśli pracował 5 godzin w święto, dostałby 5 standardowych godzin za 4 dolary za godzinę = 20 dolarów.

4) Jeśli pracownik NIE pracował w czwartek, ale pracował we wtorek I środę (święto państwowe), po prostu otrzymałby standardową stawkę godzinową za liczbę przepracowanych godzin. Tak więc, gdyby pracował 5 godzin w święto, dostałby 5 standardowych godzin za 4 USD za godzinę = 20 USD.

5) Jeśli pracownik nie pracował we wtorek LUB czwartek i NIE pracował również w środę (święto państwowe), nie otrzymałby wynagrodzenia za którykolwiek z tych dni.

Mam nadzieję, że cię nie pomyliłem !!!


Sugerowane przepisanie:

Powiedz Środa to święto państwowe.

1) Jeśli pracownik pracował we wtorek i czwartek (dni po obu stronach święta), jest on uprawniony do standardowego wynagrodzenia dziennego (8 godzin w normalnej stawce) na wakacje (np. jeśli jego normalna stawka wynosi 4 dolary za godzinę, otrzyma 32 dolary) PLUS płaci za każdą godzinę, którą przepracował w środę o 1,5 raza więcej niż normalna stawka (np. jeśli pracował 5 godzin w święto, dostałby 5 godzin × 6 USD za godzinę = 30 USD).

2) Jeśli pracownik NIE pracował zarówno we wtorek, jak i czwartek, po prostu otrzymałby standardową (normalną) stawkę godzinową za każdą godzinę pracy w środę. Więc jeśli pracował 5 godzin na wakacjach, dostałby 5 godzin × 4 $ za godzinę = 20 $. (A gdyby nie pracował na wakacjach, nie zapłaciłby za to.)

Na przykład (pokazane transponowane, z wierszami - & gt; kolumny i kolumny - & gt; wiersze, dla jasności):

     F13               F14             F15         Pay for Wednesday
 (Wtorek Godziny przepracowane) (środa godziny przepracowane) (czwartek przepracowane godziny)  0 0 0 0
      0 0 8 0
      0 5 0 5 × 4 USD = 20 USD
      0 5 8 5 × 4 USD = 20 USD
      8 0 0 0
      8 0 8 8 × 4 USD = 32 USD
      8 5 0 5 × 4 USD = 20 USD
      8 5 8 8 × 4 + 5 × 1,5 × 4 $ = 62 USD 

The 8 s są dowolne - w zasadzie dolny rząd może być 1 5 1 i wynagrodzenie na środę byłoby tak samo.


Każda pomoc byłaby naprawdę doceniana, ponieważ jestem nowy w używaniu formuł w Excelu i łatwo się mylę !!

Próbowałem użyć instrukcji IF AND, ale nie jestem pewien, jak uczynić je wystarczająco złożonymi, aby robić to, co próbuję osiągnąć.

Próbowałem:

Gdzie komórka F13 jest wtorek Godziny przepracowane, F14 to środa Godziny przepracowane, F15 to czwartek Godziny przepracowane.

= JEŻELI (I (F13> 0, F14> 0, F15> 0), F14, „Standardowa stawka dzienna”)

Ta formuła może ustalić, ile PUBLICZNYCH godzin świątecznych zapłacić, aby dać, jeśli wszystkie 3 dni są przepracowane .... ale niewiele więcej.

user193896
źródło
1
Witamy w SuperUser! Podczas gdy jesteśmy tutaj, aby pomóc, zwykle nie możemy zrobić dla ciebie wszystkiego. Rozwiń swoją odpowiedź, aby powiedzieć nam, co próbowałeś, co działało / nie działało lub jakie błędy widzisz.
techturtle
Jeden z nas jest zdezorientowany. Nie wiem, co powiedziałeś, co powinno się stać, jeśli pracownik pracował we wtorek lub czwartek, ale nie w obu.
Scott
Scott - Chyba że sam się wprawi w zakłopotanie, punkty 3 i 4 to pokrywają. Moje „ani” nie może być zmienione na „albo” !!
user193896
Cóż, jeden z nas jest nadal zdezorientowany - „albo” i „żaden” nie są wymienne. „Na pikniku będą serwować hamburgery lub kurczaka.” „Na pikniku nie będą serwować ani burgerów, ani kurczaka.” Idę na pierwszy piknik! // OK, właśnie zrozumiałem, że przeoczyłem fakt, że powiedziałeś „ani we wtorek, ani w czwartek”. Ale to nie pomaga - „ani… ani…” nie ma charakteru gramatycznego. Więc nie wiem, co rozumiesz przez ust. 3 i 4, a ja nie mam odpowiedzi na moje pytanie.
Scott
Powtórzę także powitanie @ techturtle: witaj w Superużytkowniku. Dla twojej informacji, gdy odpowiadasz na komentarz (w nowym komentarzu), zwykle wspomina się nazwisko autora, poprzedzone „@”, jak w „@Scott”. W ten sposób zostanie powiadomiony. Możesz wymienić wiele nazw, jak w „@mtone, @Scott”, ale może istnieć limit dwóch lub trzech nazw. Zobacz Odpowiadanie w komentarzach akapity z Formatowanie komentarzy Sekcja na stronie pomocy do edycji Markdown.
Scott

Odpowiedzi:

2

Wierzę, że mtone w zasadzie to dostał, z wyjątkiem odrobiny płacenia za święto (za brak pracy), jeśli pracujesz we wtorek i czwartek. Więc, zmieniając na sugerowane identyfikatory komórek user193896 (ale zachowując pomysł mtone, że B14 może być flagą boolowską do identyfikacji świąt), wynagrodzenie za środę powinno być

=IF(AND(B14, F13>0, F15>0), 8+F14*1.5, F14)

pomnożone przez normalną stawkę godzinową 4 USD za godzinę.

Scott
źródło
Masz całkowitą rację, źle odczytałem tę część pytania.
mtone
3

Pomocne byłoby wyświetlenie układu arkusza kalkulacyjnego, ale zakładam, że dla tej odpowiedzi używasz takiego kalendarza od góry do dołu.

Aby osiągnąć swój cel, utworzymy kolumnę o nazwie „Współczynnik mnożenia na wakacje”, która będzie zawierać 1 (wynagrodzenie standardowe) lub 1,5 (wynagrodzenie wakacyjne) w zależności od warunków. Potrzebna będzie również kolumna, aby (ręcznie) wskazać dni świąteczne.

1   (A) Date    (B) Holiday?  (C) Hours  (D) Factor      (E) Paid
2   2013-01-30  FALSE         8          1               8 * 1 * $4 = 32
3   2013-02-01  TRUE          4          1.5             4 * 1.5 * $4 = 24
4   2013-02-02  FALSE         8          1               8 * 1 * 4$ = 32

Aby zachować prostotę formuł, musimy maksymalnie uprościć warunki. Jeśli dobrze cię rozumiem, pracownicy zawsze otrzymują wynagrodzenie według regularnej stawki (współczynnik 1) w dni wolne od pracy. Również pracownicy, którzy nie pracują na wakacjach, nigdy nie otrzymują za to wynagrodzenia (współczynnik 1 jest dobry od 0 godzin * 1 = 0).

Tak więc jedyny przypadek, w którym czynnik musi być inny niż 1, to jeśli A) to święto, a B) niektóre godziny zostały przepracowane przed dniem poprzedzającym I po, w którym to przypadku współczynnik musi wynosić 1,5. Wystarczająco proste! Teraz możemy to przetłumaczyć na wzór z tymi dwoma warunkami.

Dodajmy to do D3. Formuła sprawdza, czy jest to święto (B3) i godziny przepracowane powyżej i poniżej (C2 i C4) tego dnia.

=IF(B3, IF(AND(C2,C4), 1.5, 1), 1)

Więc to są 2 instrukcje IF, pierwsza (zewnętrzna) to:

=IF(B3....    

Jeśli więc B3 jest FAŁSZEM (a nie świętem), zawsze zwróci 1, jednak jeśli to prawda, obliczy drugi warunek w zagnieżdżonym IF:

=IF(AND(C2,C4).....   

ORAZ sprawdza godziny przepracowane (kolumna C) i zwraca PRAWDA, jeśli obie wartości są PRAWDA. Zauważ, że używam skrótu, mówiąc C2 zamiast C2 & gt; 0 - działa, ponieważ 0 jest zawsze FALSE, a każdy inny numer PRAWDA. Jeśli oba są PRAWDZIWE, otrzymamy wynik 1.5. Ale jeśli jeden lub oba dni nie mają godzin, zwraca 1.

Następnie możesz skopiować tę formułę wszędzie (z wyjątkiem być może pierwszego wiersza, ponieważ nie masz informacji o poprzednim dniu) i zawsze powinna to być 1 lub 1,5, jeśli to konieczne.

Wreszcie, podczas obliczania swojego wynagrodzenia, wystarczy pomnożyć GODZINY * FAKTOR * STOPA PŁATNOŚCI.

Edytować: Byłaby to „uproszczona” formuła łącząca wszystkie powyższe elementy w jedną formułę PAID z kolumną, zakładającą wynagrodzenie 4 $ na końcu. Podziękowania dla Scotta za jego pomocny komentarz o tym, że nie potrzebuje 2 instrukcji IF. Do umieszczenia w E3 i skopiowania wszędzie po:

= IF (AND (B3, C2> 0, C4> 0), C3 * 1,5, C3)) * 4

Edytuj 2: Brakowało mi części pytania, w którym przyznano by 8 dodatkowych godzin standardowego wynagrodzenia, jeśli pracownik pracował w dniu poprzedzającym i późniejszym. Scott zapewnia poprawne rozwiązanie, w tym pod uwagę.

mtone
źródło
Bardzo dziękuję za wysiłki, próbując mi pomóc !!! Próbuję teraz zaimplementować twoje rozwiązanie i sprawdzić, czy działa ono we wszystkich moich scenariuszach. Jeszcze raz dziękuję za staranne, przemyślane wyjaśnienie
user193896
1
Jak jest =IF(B3, IF(AND(C2>0,C4>0), 1.5, 1), 1) różny od =IF(AND(B3,C2>0,C4>0), 1.5, 1)?
Scott
@Scott +1, to też by działało! Po prostu utrzymywałem warunki osobne dla odzwierciedlenia mojego dwuetapowego procesu myślenia, ale twoja sugestia jest bardziej czytelna na końcu.
mtone
@mtone Teraz patrzę na to, że poza polem prawdziwym i fałszywym twoje rozwiązanie nie różni się tak bardzo od mojego .... ani też nie robi tego, czego potrzebuję.
user193896