Witam,
mam problem z dodaniem wielu warunków. W załączniku zamieszczam mój arkusz, a poniżej opis problemu.
Przeznaczaniem arkusza będzie obliczanie ilości godzin i ewentualnych nadgodzin po wprowadzeniu do kolumny E liczby obrazującej długość danego dnia pracy.
Kolumny:
A - liczba porządkowa
B - data
C - dzień tygodnia, który zwraca mi formuła odnosząca się do kolumny D =JEŻELI(D2=1;"Pn";JEŻELI(D2=2;"Wt";JEŻELI(D2=3;"Śr";JEŻELI(D2=4;"Cz";JEŻELI(D2=5;"Pt";JEŻELI(D2=6;"So";JEŻELI(D2=7;"Nd";"Wpisz numer dnia w tygodniu")))))))
D - formuła odczytująca z kolumny B jaki dzień tygodnia "kryje się" pod wskazaną datą
=DZIEŃ.TYG(B2;2)
E - Liczba przepracowanych godzin(uzupełnia użytkownik arkusza)
F - Podstawa, czyli ile pracy z całego dnia stanowiła ta nieobjęta nadgodzinami. Tutaj właśnie mam problem z wprowadzeniem wielu warunków - program "ogarnia" warunki opisujące zasady dla dwóch dni, a później zdaje się ignorować kolejne wytyczne.
=JEŻELI(D2=6;JEŻELI(E2<=6;E2;JEŻELI(E2>6;6;JEŻELI(D2=7;0;JEŻELI(D2=1;JEŻELI(E2<=9,5;E2;JEŻELI(E2>9,5;9,5)))))))
Dla wartości 1 w kolumnie D program nie zgłasza błędu, ale też nie nie robi nic poza zwracaniem cyfry 0.
G - formuła, która ma przeprowadzać proste odejmowanie w sytuacji kiedy w danym dniu robimy nadgodziny(na razie napisana dla jednego dnia, ponieważ z obecnym problemem nie widziałem sensu w tym żeby pisać kolejne komendy)
=JEŻELI(D2=6;JEŻELI(E2>6;SUMA(E2-F2);0))
Dodatkowo chciałbym zapytać jak uzyskać efekt, który zamaluje na czarno wiersze w zakresie od kolumny A do G w momencie kiedy w komórce C pojawi się "Nd" lub w komórce D pojawi się cyfra 7.
Wprowadzenie wielu warunków
Wprowadzenie wielu warunków
- Załączniki
-
- Wynagrodzenie - projekt.ods
- (15.15 KiB) Pobrany 118 razy
LibreOffice 5.3.4.2
Windows 10
Windows 10
Re: Wprowadzenie wielu warunków
Zacznę od tego, że chyba niewiele wspólnego miałaś/miałeś z arkuszami. Widać to szczególnie po zastosowaniu funkcji JEŻELI.
Ale do rzeczy.
Dzień tygodnia w kolumnie C.
Cała ta formuła jest zbędna, gdyż w kolumnie B jest już data. Zatem w kolumnie C wystarczy wpisać formułę
Wstawi ona skróconą nazwę dnia tygodnia wynikającą z daty. Jedyną różnicą w stosunku do Twoich wyników jest to że skróty są wieloliterowe: pon., wt., śr., czw., pt., sob., i niedz., ale to chyba nie jest problem. Jeżeli wpiszesz trzy literki "n" otrzymasz pełną nazwę dnia tygodnia.
Obliczenia w kolumnie E.
Tutaj jest całkowity galimatias i szczerze mówiąc nie chce mi się rozgryzać jaki to ma być algorytm. Z tego co napisałeś wynika tylko tyle, że obliczenia są dokonywane tylko dla soboty (pierwszy warunek brzmi bowiem D2=6 i po jego spełnieniu wykonywane są wszystkie inne działania.
Chciałbym zasugerować Ci, przy budowaniu złożonych warunków korzystanie ze schematu blokowego. Przy jego pomocy sprawdzisz także czy Twoje obliczenia są kompletne, czyli obejmują wszystkie przypadki.
Elementem takiego schematu jest pokazana poniżej ilustracja. Na końcach strzałek dorysowujesz prostokąt z żądanym wynikiem albo kolejny element warunkowy. W ten sposób powstanie cały schemat złożonej formuły JEŻELI.
Przykład zastosowania tego sposobu poniżej. Podejrzewam jednak, że to obliczenie można zrobić prościej, musiałbym jednak mieć jakiś opis wyjaśniający co ma być policzone.
Obliczenia w kolumnie G.
W końcu zaczernianie komórek. Ten efekt nazywa się formatowanie warunkowe i możesz o nim przeczytać np tutaj
https://yestok.pl/ooo/y56.php
Ale do rzeczy.
Dzień tygodnia w kolumnie C.
Cała ta formuła jest zbędna, gdyż w kolumnie B jest już data. Zatem w kolumnie C wystarczy wpisać formułę
Kod: Zaznacz cały
=TEKST(B2;"nn")
Obliczenia w kolumnie E.
Tutaj jest całkowity galimatias i szczerze mówiąc nie chce mi się rozgryzać jaki to ma być algorytm. Z tego co napisałeś wynika tylko tyle, że obliczenia są dokonywane tylko dla soboty (pierwszy warunek brzmi bowiem D2=6 i po jego spełnieniu wykonywane są wszystkie inne działania.
Chciałbym zasugerować Ci, przy budowaniu złożonych warunków korzystanie ze schematu blokowego. Przy jego pomocy sprawdzisz także czy Twoje obliczenia są kompletne, czyli obejmują wszystkie przypadki.
Elementem takiego schematu jest pokazana poniżej ilustracja. Na końcach strzałek dorysowujesz prostokąt z żądanym wynikiem albo kolejny element warunkowy. W ten sposób powstanie cały schemat złożonej formuły JEŻELI.
Przykład zastosowania tego sposobu poniżej. Podejrzewam jednak, że to obliczenie można zrobić prościej, musiałbym jednak mieć jakiś opis wyjaśniający co ma być policzone.
Obliczenia w kolumnie G.
Te obliczenia wykonywane są także tylko dla soboty. Przy czym jeśli to jest sobota, to tylko wtedy gdy liczba z kolumny E jest większa od 6. Wówczas od wartości w kolumnie E odejmowana jest wartość z kolumny F. Zastosowana tu funkcja SUMA nie ma żadnego sensu bowiem niczego ona nie sumuje.GK1 pisze:=JEŻELI(D2=6;JEŻELI(E2>6;SUMA(E2-F2);0))
W końcu zaczernianie komórek. Ten efekt nazywa się formatowanie warunkowe i możesz o nim przeczytać np tutaj
https://yestok.pl/ooo/y56.php
AOO 4.1.15, LO 7.5.9 (x64) na Windows 10 64bit
Ważne!
Jeśli twój problem został rozwiązany, wróć do swojego pierwszego postu, przejdź do edycji i dopisz [SOLVED] w temacie.
Inni, którzy mają podobny problem, będą wiedzieli, że istnieje jego rozwiązanie.
Ważne!
Jeśli twój problem został rozwiązany, wróć do swojego pierwszego postu, przejdź do edycji i dopisz [SOLVED] w temacie.
Inni, którzy mają podobny problem, będą wiedzieli, że istnieje jego rozwiązanie.