Calc zmienia wartość komórki

Użytkowanie arkusza kalkulacyjnego
nanann
Posty: 5
Rejestracja: śr lip 04, 2018 12:39 pm

Calc zmienia wartość komórki

Post autor: nanann »

Hej wszystkim,
Mam problem z Calc'iem ponieważ zmienia wartości w komórkach (zrzut ekranu w załączniku). Komórki sformatowane są na "godziny". Dodam, iż wszystkie wartości wpisywane są ręcznie a później podczas sumowania wychodzą dziwne wartości.
Załączniki
Bez tytułu.jpg
Open Office 4.4.2.2. win 10
Awatar użytkownika
Vakarian
Posty: 91
Rejestracja: ndz lip 17, 2016 6:51 pm

Re: Calc zmienia wartość komórki

Post autor: Vakarian »

Sprawdziłem w LibreOffice 6.1 i nic dziwnego się nie dzieje. Jeżeli poprawnie wpiszę godziny, to Calc sumuje je bez żadnego problemu. Niewielki, bo aż trzywierszowy przykład znajdziesz w załączniku.
Załączniki
Bez tytułu 1.ods
(9 KiB) Pobrany 120 razy
LibreOffice 6.0.1, OS Windows 7
Jan_J
Posty: 4579
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Calc zmienia wartość komórki

Post autor: Jan_J »

Chyba chodzi o to, że wprowadzona wartość -16:00 (-16 godzin) wyświetla się i sumuje jako 8:00 (8 godzin).
Jest tak dlatego, że format Czas, czyli HH:MM albo HH:MM:SS dotyczy nie tyle długości okresu czasu, co pory dnia. W tym sensie -16 to nadal jest 8 rano, tyle że wczoraj...
Swoją drogą "sumowanie pór dnia" jest zadaniem bez sensu.
Dla opisania długości trwania czasu w godzinach służy format [HH] i jego warianty [HH]:MM oraz [HH]:MM:SS.
JJ
LO (24.2|7.6) ∙ Python (3.12|3.11|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
Awatar użytkownika
Vakarian
Posty: 91
Rejestracja: ndz lip 17, 2016 6:51 pm

Re: Calc zmienia wartość komórki

Post autor: Vakarian »

Faktycznie, źle zrozumiałem problem. A wystarczyło lepiej przyjrzeć się załączonemu zrzutowi ekranu... Mój błąd!
LibreOffice 6.0.1, OS Windows 7
Jan_J
Posty: 4579
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Calc zmienia wartość komórki

Post autor: Jan_J »

Załącznik jpeg, słabo czytelny.
JJ
LO (24.2|7.6) ∙ Python (3.12|3.11|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
nanann
Posty: 5
Rejestracja: śr lip 04, 2018 12:39 pm

Re: Calc zmienia wartość komórki

Post autor: nanann »

1) Wszędzie wpisane jest po 8, czyli Calc zmienia z "8" na "-16".
2) Było ustawione na HH:MM:SS
Zmieniłem na HH:MM i.... według programu
8*20 = 16...
Wedle moich obliczeń, których nauczyłem się na studiach
8*20 = 160, chyba, że źle liczę

Cały czas pokazuje -16. Muszę to drugi raz zmienić aby było dobrze.
Załączniki
13.jpg
12.jpg
Open Office 4.4.2.2. win 10
Awatar użytkownika
Jermor
Posty: 2352
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Calc zmienia wartość komórki

Post autor: Jermor »

Muszę powiedzieć, że także nie rozumiem zgłoszonego problemu.
W komórce D16 została wpisana wartość -16:00. Z ilustracji wynika to, że jest to wpis bezpośredni do tej komórki, a nie wynik jakiejś formuły. To, co widać w pasku formuły (tym zawierającym znaki = i Σ) to to, co wpisano do komórki. W komórce natomiast widać postać wpisu po zastosowaniu formatowania.
Ten wpis jest o tyle dziwny, że wydawałoby się, iż powinien w tej komórce znajdować się wynik odejmowania czasu rozpoczęcia od czasu zakończenia (pod warunkiem, że oba te czasy należą do tej samej doby).
Zapis godziny 16 to w istocie liczba 0,666666666666667 przedstawiona w formacie godzinowym. Liczba ta dotyczy zerowego dnia, od którego rozpoczyna się prezentowanie daty. Dla LibreOffice domyślnie jest to 30.12.1899 r. Liczba ujemna oznacza zatem dzień poprzedzający, czyli 29.12.1899 r. a sam ułamek odpowiada w tym przypadku godzinie 8 rano. Napisał już o tym Jan_J.
Sumowanie ułamków daje w efekcie jakąś liczbę, Jednak przedstawienie jej w formacie godzinowym, pobiera do wyznaczenia tej godziny wyłącznie część ułamkową. Jeśli taka suma ma przedstawiać łączną liczbę godzin, to format [HH] oznacza, że przed wyświetleniem wartości część całkowita liczby zostanie wewnętrznie pomnożona przez 24 i do tego wyniku zostanie dodana godzina (minuty i sekundy) wynikająca z części ułamkowej. Analogicznie dotyczy to prezentacji w formacie minut [MM].
Wspomniany iloczyn 20*8:00 to w istocie iloczyn 20*0,666666666666667 i jego wartość arytmetyczna to 6,66666666666667 a cała taka wartość to godzina 16:00:00 dnia 05.01.1900 r. Wynik widoczny w podsumowaniu (D38) jest właśnie sformatowany kodem [HH]:MM:SS,00 i prezentuje łączną liczbę godzin.
AOO 4.1.15, LO 24.8.2 (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.
zulu144
Posty: 92
Rejestracja: sob gru 12, 2009 3:27 am

Re: Calc zmienia wartość komórki

Post autor: zulu144 »

nanann pisze:1) Wszędzie wpisane jest po 8, czyli Calc zmienia z "8" na "-16".
2) Było ustawione na HH:MM:SS
Zmieniłem na HH:MM i.... według programu
8*20 = 16...
Wedle moich obliczeń, których nauczyłem się na studiach
8*20 = 160, chyba, że źle liczę

Cały czas pokazuje -16. Muszę to drugi raz zmienić aby było dobrze.
Aby sprawdzić "fizyczną zawartość liczbową w zaznaczonych komórkach" przy ręcznym formatowaniu można użyć [ctrl]+[m]

Przy stylach zmienić styl na domyślny ewentualnie zmienić formatowanie na liczbę i wtedy dopiero patrzeć co jest mnożone i jaki daje wynik.
Później można ponownie sformatować.
A na szybko można pojedynczo zaznaczać komórki i używać [ctrl]+[m] i następnie anulować zmianę przez [ctrl]+[z]
AOO 4.1.7 na WIN7; LO 6.3.2 portable
ODPOWIEDZ