Problem wydaje się być błahy jednak nie potrafię go rozgryźć.
Otóż:
Mój arkusz składa się z kliku tabel, a ja muszę połączyć z sobą tabele o nazwie: Godz. rozpoczęcia(e,czas), Godz zakończenia(f,czas), Czas gry(g,czas),cena za godzinę(h,walutowe), zapłacono(i,walutowe) oraz dodatkowe opłaty(j,walutowe). Główny problem polega na odjęciu godz. zakończenia od godz rozpoczęcia (od razu mówię w moim wypadku nigdy nie wyjdzie wynik minusowy). Różnica ta ma pojawić się w tabeli czas gry.
Następnie w Zapłacono ma pokazać się iloczyn czasu gry do cena za godzinę oraz dodanie do tego dodatkowych opłat.
W sumie wszystko ładnie, tylko chciałbym aby czas gry był wypisywany automatycznie po wpisaniu ręcznie godz rozpoczęcia i zakończenia (do tego też już doszedłem). Jednak jeśli Excel od razu wyliczy mi tę różnicę to w kwocie zamiast 40zł pojawia się cena troszkę ponad 1 zł.
Nie jestem dobry w Excelu dlatego piszę wszystko prostymi ścieżkami.
Funkcje użyte przeze mnie:
Zapłacono: =JEŻELI(G4=0;"";ILOCZYN(G4;H4)+J4)
Czas gry: =f4-e4
Wydaje mi się że będzie trzeba kombinować z formatowaniem jednak nie mogę jakoś temu podołać.
Zgadza się… Ogólnie w Excel’u jest troszkę kłopotów z wykonywaniem działań na różnych typach danych - ale oczywiście da się je obejść. Jeśli w komórkach E, F i G masz ustawione formatowanie czas, to we wszystkich tych polach widzisz godziny. Dla przykładu w E mamy 12:00:00, a w F 13:00:00 więc różnica w kolumnie G będzie równa 01:00:00. Ale gdy formatowanie kolumny G zmienisz na liczbowe, pokaże się w niej wartość 0,0417, która oznacza, że 1 godzina jest 0,0417 częścią doby, tak jak 12 godzin będzie 0,5 częścią - i z tego wynika problem. Możliwe są więc dwa rozwiązania:
w kolumnie G (czyli w czasie gry) stosujemy formułę (F4-E4)*24 i jako formatowanie wybieramy liczby - będziemy mieć wtedy liczbę godzin na przykład z dokładnością do części setnych - formuła w kolumnie I nie będzie więc zmieniana i przy zapisie JEŻELI(G4=0;"";G4*H4+J4) otrzymamy odpowiednią kwotę,
w kolumnie G (czyli w czasie gry) stosujemy formułę (F4-E4) i jako formatowanie wybieramy czas - pokaże się wtedy na przykład wartość 01:00:00 - zmianie ulegnie wtedy formuła w kolumnie I, w której będziemy mieli wtedy taki zapis - JEŻELI(G4=0;"";G4*H4*24+J4).
W jednym i w drugim przypadku otrzymamy takie same poprawne wyniki…