Problem z funkcją jeżeli

Użytkowanie arkusza kalkulacyjnego
koballo
Posty: 1
Rejestracja: wt cze 29, 2021 6:20 pm

Problem z funkcją jeżeli

Post autor: koballo »

Cześć,
mam problem z zagnieżdżoną funkcją JEŻELI. Mianowicie, chcę, żeby w komórce, w której zadałem funkcję pojawił się dany tekst, kiedy w innej komórce, do której się odwołuję pojawi się konkretna liczba. Niestety, kiedy wklepuję formułę, to cały czas pojawia mi się fałsz, który jest niezgodny. Już daję przykład:
Kiedy w komórce C26 pojawi się liczba 400, to w komórce z funkcją ma się pojawić np. ABC, kiedy 300 to DEF, kiedy 200 to GHI itp. Problem pojawia się już wtedy, kiedy mam prostą funkcję z jednym przykładem:
=JEŻELI(C26=400;"ABC";"xx") -> już wtedy pojawia mi się wartość fałszywa (w tym przypadku xx), mimo że ta komórka C26 rzeczywiście ma wartość 400.
Ten sam kłopot pojawia mi się w zagnieżdżonej formule.
Co robię nie tak?
OpenOffice 3.1 na Windows 7
Awatar użytkownika
Jermor
Posty: 2254
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Problem z funkcją jeżeli

Post autor: Jermor »

Nic nie robisz "nie tak". Prawdopodobnie twoje 400 jest wpisane do komórki C26 jako tekst. Możesz zmienić formułę na

Kod: Zaznacz cały

=JEŻELI(C26="400";"ABC";"xx")
,
jeśli wyniki będą poprawne, to tak jest rzeczywiście.
Kiedy liczba jest tekstem? Wtedy gdy jest wpisywana do komórki, która ma przypisany format "Tekst". Liczba może być tekstem także w formatowaniu typu "Liczba" jeśli jej wpis zostanie poprzedzony znakiem apostrofu. Apostrof w takiej sytuacji jest widoczny wyłącznie w wierszu wprowadzania.
Wpisanie liczby do komórki z formatowaniem "Tekst" ustala, że wpisana informacja jest tekstem. Zmiana formatowania na inny nie zmienia charakteru wpisu. W wierszu wprowadzania zobaczysz wówczas, że wpisana liczba jest poprzedzona apostrofem. Aby była to rzeczywiście liczbą należy usunąć apostrof albo po prostu wpisać liczbę ponownie do komórki.
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: 4560
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Problem z funkcją jeżeli

Post autor: Jan_J »

Inna możliwa przyczyna to nadanie komórce liczbowej formatu, który pokaże jej wartość z określoną precyzją, np. bez miejsc dziesiętnych. Wtedy wynik obliczeń równy np. 400,031 widać w komórce jako 400, ale to wcale nie znaczy, że ma taką wartość.
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
Awatar użytkownika
Jermor
Posty: 2254
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Problem z funkcją jeżeli

Post autor: Jermor »

Powód podany przez @Jan_J jakoś mi umknął, a wydaje się on być najbardziej prawdopodobną przyczyną problemu.
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.
Awatar użytkownika
Jermor
Posty: 2254
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Problem z funkcją jeżeli

Post autor: Jermor »

A tak w ogóle, jeśli twoim problemem jest wybór, jaki przytoczyłeś, czyli jakiś wynik dla 400, jakiś dla 300, jakiś dla 200 i jakiś dla 100, to skorzystaj z wygodniejszej funkcji WYBIERZ(). W przypadku tych danych można zapisać ją tak (pod warunkiem, że w C26 jest całkowita wielokrotność 100):

Kod: Zaznacz cały

=WYBIERZ(C26/100;"wynik gdy C26=100";"wynik gdy C26=200";"wynik gdy C26=300";"wynik gdy C26=400")
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.
ODPOWIEDZ