Sumowanie dwoch komorek jezeli obie sa zapelnione

Użytkowanie arkusza kalkulacyjnego
ilikepeter
Posty: 11
Rejestracja: ndz kwie 07, 2019 8:15 pm

Sumowanie dwoch komorek jezeli obie sa zapelnione

Post autor: ilikepeter »

Witam,

Bardzo prosze o pomoc w wydaje mi sie prostej sprawie.
Chce otrzymac sume z dwoch komorek A1 i B1, jednak jezeli komorka B1 jest pusta chce zeby komorka z wynikiem tez pozostala pusta.
Probowalam na kilka roznych sposobow ale bez efektu...
Ostatnio zmieniony ndz maja 05, 2019 12:04 pm przez ilikepeter, łącznie zmieniany 1 raz.
OpenOffice 3.1 na Windows Vista
Jan_J
Posty: 4562
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Sumowanie dwoch komorek jezeli obie sa zapelnione

Post autor: Jan_J »

Adres w =A1+B1 sczytuje 0 z pustej komórki. Więc jeśli chcesz rozróżnić między `nic` a `0`, potrzeba jakiegoś rozróżnienia wariantów. Najprościej funkcją warunkową =jeżeli(czy.pusta(B1); ""; A1+B1)
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
ilikepeter
Posty: 11
Rejestracja: ndz kwie 07, 2019 8:15 pm

Re: Sumowanie dwoch komorek jezeli obie sa zapelnione

Post autor: ilikepeter »

Dziekuje za odpowiedz.
Mam jeszcze pytanie. Dlaczego najprostsza formula w tym przypadku z excela =ALS(H7="";"";SOM(G7:H7)) jak rowniez szereg roznych innych nie dzialaja? (tutaj na przykladzie innych komorek)
Gdzie robie blad? Czym roznia sie formule z excela od tych z libre?
OpenOffice 3.1 na Windows Vista
Jan_J
Posty: 4562
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Sumowanie dwoch komorek jezeli obie sa zapelnione

Post autor: Jan_J »

Formuła w arkuszu kalkulacyjnym jest tekstem opisującym proces obliczeniowy, w którym występują nazwy wykorzystywanych zasobów: funkcji wbudowanych w bibliotekę arkusza, innych funkcji, adresy komórek.
Z adresami jest stosunkowo mały problem. Ale nazwy funkcji, wskutek historycznie przyjętych rozwiązań, dopasowują się do używanego języka interfejsu. Tyle na poziomie TEKSTU FORMUŁ. Ale już na poziomie SKOROSZYTU różnice te są nieistotne, tj. plik roboczy zapisany w interfejsie języka NE, odczytany w interfejsie języka PL, będzie działał tak samo, a nazwy funkcji w formułach będą widziane w bieżącym języku. Właściwość ta dotyczy zarówno Excela, jak i w Calca, i jest opisana w ich dokumentacji.

Wobec tego, użycie słowa ALS odnosi się do funkcji warunkowej tylko jeśli używamy interfejsu języka holenderskiego. W innych językach ta sama funkcja nosi inną nazwę, np. w przypadku polskiego będzie to JEŻELI, a angielskiego: IF.
Widocznie dla Excela masz włączony interfejs niderlandzki. W Calcu możesz go sobie włączyć, o ile zainstalowany jest odpowiedni pakiet językowy.
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
ilikepeter
Posty: 11
Rejestracja: ndz kwie 07, 2019 8:15 pm

Re: Sumowanie dwoch komorek jezeli obie sa zapelnione

Post autor: ilikepeter »

Wybacz nie zauwazylam ze wkleilam formule w innym jezyku. Praca - Holenderski, dom - Polski
Formula ktora wklejalam wpisywalam wiec w jezyku Polskim. Brzmiala ona dokladnie tak =JEZELI(H7="";"";SUMA(G7:H7)) z uwzglednieniem polskich znakow i niestety nie zadzialala. Zastanawiam sie wiec gdzie popelnilam blad? Czy Libre dziala jednak troche inaczej?
Pozniej sprawdzilam w pracy na excelu i w jezyku holenderski dokladnie to samo wiec: =ALS(H7="";"";SOM(G7:H7)) i zadzialalo bez zarzutow.
OpenOffice 3.1 na Windows Vista
ilikepeter
Posty: 11
Rejestracja: ndz kwie 07, 2019 8:15 pm

Re: Sumowanie dwoch komorek jezeli obie sa zapelnione

Post autor: ilikepeter »

Jeszcez dla uzupelnienia. Nie chodzi tu wiec o jezyk. W domu mam ustawiony polski wiec wpisuje formuly po polsku a w pracy holenderski. Stad na forum znalazla sie formula w jezyku holenderskim ( tak, bardzo podobnym do niemieckiego :) )
OpenOffice 3.1 na Windows Vista
Jan_J
Posty: 4562
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Sumowanie dwoch komorek jezeli obie sa zapelnione

Post autor: Jan_J »

Coś mi nie pasowało z niemieckim...

Co to znaczy `nie działa`? jaki daje wynik?

Używamy tu bardzo prostych formuł ze standardowymi funkcjami. `Niedziałanie` bywa skutkiem (częściej) niezrozumienia sytuacji albo (znacznie rzadziej) problemów z zainstalowaniem/uprawnieniami do użytkowania programu.

W interfejsie języka polskiego funkcja warunkowa nazywa się JEŻELI (a nie JEZELI); funkcja sumująca nazywa się SUMA. Można też użyć zwykłego + do dodawania składników.
Jeśli nazwy narodowe komuś się nie podobają (a bywają dość pokraczne), zawsze może sobie włączyć oryginalne, anglojęzyczne nazwy funkcji: Narzędzia/Opcje/Calc/Formuła/[x] użyj angielskich nazw funkcji. W OpenOffice 3.1 takiej możliwości jeszcze nie było.
Funkcje dostępne w danej konfiguracji -- tj. standardowe + zarejestrowane przez użytkownika -- możesz zobaczyć i wybrać przez Wstaw/Funkcja. Nie polecam na stałe, bo takie formularze ogłupiają, ale są przydatne do sprawdzenia nazwy i sposobu użycia.

Wykaz funkcji Apache OpenOffice Calc: https://pl.wikibooks.org/wiki/OpenOffic ... lc/Funkcje
Wykaz funkcji LibreOffice Calc: https://help.libreoffice.org/Calc/Funct ... ategory/pl
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
ilikepeter
Posty: 11
Rejestracja: ndz kwie 07, 2019 8:15 pm

Re: Sumowanie dwoch komorek jezeli obie sa zapelnione

Post autor: ilikepeter »

Dostawałam za każdym razem komunikat "błąd 508". Po zastosowaniu polskiego znaku "ż" problem zniknął.
Dziękuje za pomoc. Jednak rozwiązanie było tak oczywiste że aż mi głupio.
Pozostaje jednak dalej mały problem.
Po wpisaniu formuły w komórce wyświetla się #VALUE! ale tylko jeżeli H7 jest pusta. Jeżeli znajduje się tam liczba równanie jest wykonywane poprawnie. Czyli działa połowicznie.
Zaproponowana przez Ciebie formuła działa w identyczny sposób. Również #VALUE! jeżeli komórka jest pusta.
Co ciekawe sporządziłam dzisiaj w pracy dokładnie ten sam arkusz ale w excelu i tam się ten problem nie pojawia. Pusta komórka zostaje pusta. Po przesłaniu do siebie i otworzeniu go teraz w Calcu również jest ok.
Można by powiedzieć więc że problem rozwiązany. Mam pożądany przez siebie arkusz. Jednak chciałabym po prostu zrozumieć.
Identyczne formuły różnią się tylko programem w którym początkowo były wykonane i w jednym arkuszu działają bez zarzutu a w drugim #VALUE!
OpenOffice 3.1 na Windows Vista
Awatar użytkownika
Jermor
Posty: 2268
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Sumowanie dwoch komorek jezeli obie sa zapelnione

Post autor: Jermor »

Sprawdź nazwę funkcji w drugiej części, np zapis

Kod: Zaznacz cały

=JEŻELI(H7="";"";SUM(G7:H7))
wyświetli błąd, bo dla polskiej lokalizacji nazwą funkcji musi być SUMA a nie SUM. Kiedy H7 jest pusta realizowany jest drugi argument funkcji JEŻELI, gdy zawiera "coś", realizowany jest trzeci argument funkcji i wtedy błąd się pojawia.
Jak napisał już Jan_J otwarcie dokumentu utworzonego w innym języku nie ma wpływu na funkcje wbudowane w arkusz. To oznacza, że twój holenderski dokument otwarty w polskiej wersji Calca będzie zawierał spolszczone nazwy funkcji.
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.
Jan_J
Posty: 4562
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Sumowanie dwoch komorek jezeli obie sa zapelnione

Post autor: Jan_J »

W przypadku pustej H7 nie ma się co psuć, tylko drugie "".
Ja bym sprawdził, co tam jest naprawdę napisane: może "" ale może '' lub co gorsza ””
Mają być tuż obok siebie dwa znaki podwójnego cudzysłowu technicznego (znak ASCII nr 34).
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
ilikepeter
Posty: 11
Rejestracja: ndz kwie 07, 2019 8:15 pm

Re: Sumowanie dwoch komorek jezeli obie sa zapelnione

Post autor: ilikepeter »

Otworzylam wiec na nowo program i w nowym czystym arkuszu zrobilam ponownie szablon z nazwanymi juz wyzej formulami. Rzeczywiscie dziala i nie pojawia sie zaden blad badz inny komunikat. Natomiast w arkuszu w ktorym zaczelam na samym poczatku dalej to samo, chociaz nie ma zadnej nawet najmniejsze roznicy miedzy uzytymi w plik1 i plik 2 formulami.
Tak czy inaczej, dziekuje za pomoc!
OpenOffice 3.1 na Windows Vista
Awatar użytkownika
Jermor
Posty: 2268
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Sumowanie dwoch komorek jezeli obie sa zapelnione

Post autor: Jermor »

Myślę, że chętnie zobaczylibyśmy ten kawałek arkusza. Jeśli to nie tajne, to może zamieść plik do pobrania i przeanalizowania.
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.
ilikepeter
Posty: 11
Rejestracja: ndz kwie 07, 2019 8:15 pm

Re: Sumowanie dwoch komorek jezeli obie sa zapelnione

Post autor: ilikepeter »

Niestety nie moge tego zrobic.
Mam notomiast jeszcze prosbe o pomoc.
Jak moge przerobic dwie juz wyzej nazwane formuly czyli: =jeżeli(czy.pusta(B1); ""; A1+B1) lub =JEZELI(H7="";"";SUMA(G7:H7)) tak zeby mowa bylo o dwoch pustych komorkach a nie tylko o jednej.
=JEZELI(H7:G7="";"";SUMA(G7:H7)), =jeżeli(czy.pusta(B1:A1); ""; A1+B1) Czy tak jest prawidlowo?
OpenOffice 3.1 na Windows Vista
Awatar użytkownika
Jermor
Posty: 2268
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Sumowanie dwoch komorek jezeli obie sa zapelnione

Post autor: Jermor »

Sądzę, że używanie funkcji SUMA do zsumowania dwóch liczb to nadmiar szczęścia.
Każdy warunek należy zbadać oddzielnie ustalając jakie działanie logiczne ma między nimi zajść, LUB czy I. Jeśli wystarczy aby jeden warunek był prawdziwy, to działaniem jest LUB, jeśli oba muszą być prawdziwe to I. Zatem

Kod: Zaznacz cały

=JEŻELI(LUB(G7="";H7="");"";G7+H7) Będzie puste gdy choćby jeden warunek był prawdziwy.
=JEŻELI(I(G7="";H7="");"";G7+H7)  Będzie puste tylko wtedy gdy w obu komórkach nic nie będzie.
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.
ilikepeter
Posty: 11
Rejestracja: ndz kwie 07, 2019 8:15 pm

Re: Sumowanie dwoch komorek jezeli obie sa zapelnione

Post autor: ilikepeter »

Dziala. Dziekuje :)
Czy moglbys mi wyjasnic jaka funkcje pelni w tej funkcji podwojny cudzyslow za nawiasem? =JEŻELI(LUB(G7="";H7=""); "" ;G7+H7)
Chodzi mi znak oddzielony spacja.
OpenOffice 3.1 na Windows Vista
Awatar użytkownika
Jermor
Posty: 2268
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Sumowanie dwoch komorek jezeli obie sa zapelnione

Post autor: Jermor »

We wszystkich formułach, gdy jakiś argument jest tekstem musi zostać ujęty w cudzysłów. Np.
=JEŻELI(A1=1;"To jest jeden";"To nie jest jeden")
Podwójny cudzysłów sygnalizuje tekst pusty, wstawienie takiego ciągu do komórki jest równoważne komórce pustej.
Funkcja JEŻELI ma trzy argumenty: pierwszym jest wyrażenie logiczne, drugim - wyrażenie jakie ma zostać wykonane gdy wyrażenie logiczne ma wartość PRAWDA i trzecim - wyrażenie jakie ma zostać wykonane gdy wartość wyrażenia logicznego wynosi FAŁSZ.
W tym przykładzie badanym wyrażeniem logicznym jest LUB(G7="";H7=""), czyli czy G7 lub H7 jest puste. Będzie ono prawdziwe wtedy, gdy choćby jeden ze składników tego wyrażenia będzie prawdziwy.
Podwójny cudzysłów za średnikiem oznacza tekst pusty, który zostanie wstawiony do komórki, gdy wartość całego wyrażenia logicznego wynosi PRAWDA, jest to bowiem drugi argument funkcji JEŻELI.
No a sumowanie jest argumentem trzecim.
O korzystaniu z arkuszy i pracy z nimi możesz poczytać np. tutaj: https://yestok.pl/gen/yak01.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.
ilikepeter
Posty: 11
Rejestracja: ndz kwie 07, 2019 8:15 pm

Re: Sumowanie dwoch komorek jezeli obie sa zapelnione

Post autor: ilikepeter »

Bardzo ladnie wytlumaczone. Dziekuje!
OpenOffice 3.1 na Windows Vista
ilikepeter
Posty: 11
Rejestracja: ndz kwie 07, 2019 8:15 pm

Re: Sumowanie dwoch komorek jezeli obie sa zapelnione

Post autor: ilikepeter »

Witam,
Chciałaby odwrócić sytuacje czyli wykonać daną czynność jeżeli komórka jest zapełniona, czyli znajduje się w niej jakaś wartość.
Jak oznaczyć "pełną" komórkę i zapisać taką formułę?
OpenOffice 3.1 na Windows Vista
Awatar użytkownika
Jermor
Posty: 2268
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Sumowanie dwoch komorek jezeli obie sa zapelnione

Post autor: Jermor »

Zakładam, że chodzi cały czas o porównanie zawartości dwóch komórek i akcja ma się wykonać tylko wtedy gdy choćby jedna z nich zawierała jakąś zawartość. Ale tak najbardziej ogólnie, należy utworzyć takie wyrażenie logiczne, które opisze nasze żądanie zwracając wynik PRAWDA albo FAŁSZ.
Wróćmy do przykładu:

Kod: Zaznacz cały

=JEŻELI(LUB(G7="";H7="");"";G7+H7) Będzie puste gdy choćby jeden warunek był prawdziwy.
to

Kod: Zaznacz cały

=JEŻELI(I(G7="";H7="");"";G7+H7) Będzie puste tylko wtedy gdy obie komórki będą puste
Funkcja logiczna I zwraca wartość PRAWDA tylko wtedy gdy wszystkie wyrażenia logiczne będące jej argumentami mają wartość PRAWDA. Gdy choćby jedno wyrażenie ma wartość logiczną FAŁSZ wartością funkcji jest FAŁSZ. W tym przykładzie gdy którakolwiek komórka zawiera "coś" to odpowiadającej jej wyrażenie logiczne ...="" ma wartość FAŁSZ, cała funkcja ma wartość FAŁSZ, więc wykona się działanie drugiego argumentu.
Oczywiście można zapisać ją z pomocą funkcji LUB następująco:

Kod: Zaznacz cały

=JEŻELI(LUB(G7<>"";H7<>"");G7+H7;"") Będzie wykonane dodawanie gdy choćby jeden warunek był prawdziwy.
Każdy zapis typu G7="" można zastąpić funkcją CZY.PUSTA(G7) zwracającą wartość PRAWDA gdy komórka jest pusta albo FAŁSZ gdy komórka coś zawiera. W tej sytuacji, gdy chcemy aby otrzymać wynik PRAWDA kiedy komórka coś zawiera, każdy zapis typu G7<>"" Trzeba zastąpić złożeniem dwóch funkcji NIE(CZY.PUSTA(G7))

Kod: Zaznacz cały

=JEŻELI(I(CZY.PUSTA(G7);CZY.PUSTA(H7));"";G7+H7) Będzie puste tylko wtedy gdy obie komórki będą puste.
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.
ilikepeter
Posty: 11
Rejestracja: ndz kwie 07, 2019 8:15 pm

Re: Sumowanie dwoch komorek jezeli obie sa zapelnione

Post autor: ilikepeter »

Dziala. Dziekuje!
OpenOffice 3.1 na Windows Vista
ODPOWIEDZ