[SOLVED] Funkcja JEŻELI - problem z polem 'test logiczny'

Użytkowanie arkusza kalkulacyjnego
michal.s
Posty: 86
Rejestracja: pn sty 23, 2012 6:55 pm

[SOLVED] Funkcja JEŻELI - problem z polem 'test logiczny'

Post autor: michal.s »

Witam Wszystkich.
Zwracam się do Was z prośbą o pomoc w następującej kwestii.
Nie potrafię poradzić sobie z następującym przypadkiem:
Obrazek
https://1drv.ms/u/s!Al4Hmowva4F8vh-xjbn ... 3?e=eDBjQw
W komórkach w których nie zostaje wyszukany tekst "DATA" pojawia się komunikat #ARG!
Ja rozumiem tą formułę w ten sposób:
Jeżeli w komórce A4 wyszykany zostaje tekst "DATA" to w komórce B4 wstawiony zostaje tekst do tekstu 'DATA" jeżeli nie to wstaw wartość z komórki A4.
Nie wiem co wpisać w pole 'test logiczny' dla w/w formuły, żeby nie pojawiał się komunikat #ARG!
Załączę jeszcze kod, który użyłem.

Kod: Zaznacz cały

=JEŻELI(SZUKAJ.TEKST("DATA";A4;1);LEWY(A4;SZUKAJ.TEKST("DATA ";A4;1)-2);A4)
p.s. mam jeszcze pytanie, jak zamieścić zdjęcie w poście?
Ostatnio zmieniony śr cze 05, 2019 6:46 pm przez michal.s, łącznie zmieniany 1 raz.
Pozdrawiam Michał
OpenOffice3.3 na Windows 7
Jan_J
Posty: 4579
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Funkcja JEŻELI - problem z polem 'test logiczny'

Post autor: Jan_J »

Funkcja SZUKAJ.TEKST podaje albo numer pozycyjny początku wystąpienia frazy w tekście, albo generuje błąd #VALUE!, jeśli taka fraza nie występuje.
W Twoim arkuszu jest błąd #ARG!. Być może jest tak w starszych wersjach Calca (3.3?).

Funkcja JEŻELIi uzależnia sposób wyliczenia wartości od wyników testu logicznego.
Jeśli zależy Ci na obcięciu frazy na podstawie miejsca jej znalezienia, albo na przejęciu całego tekstu z wejścia, to konstrukcja postaci
=jeżeli(test; lewy(...); tekst)
jest w zasadzie poprawna. Tyle, że jako test nie powinna wystąpić wartość funkcji SZUKAJ.TEKST, bo ta daje albo liczbę, albo błąd, a JEŻELIi rozróżnia wartości 0 i 1 (ściślej: 0 i nie-0). Poprawne byłoby obudowanie pierwszego szukaj-a w funkcję CZY.BŁĄD:

Kod: Zaznacz cały

=JEŻELI(CZY.BŁĄD(SZUKAJ.TEKST("DATA";A4;1)); A4; LEWY(A4;SZUKAJ.TEKST("DATA ";A4;1)-2))
przy czym CZY.BŁĄD daje 1 w przypadku niepowodzenia obliczeń testu; stąd zmiana kolejności dalszych argumentów funkcji JEŻELI.

W niektórych wersjach Calca znajduje się funkcja JEŻELI.BŁĄD, która działa tak, jak to sobie wyobrażałeś w swoim poście.

W Twoim przykładzie występują frazy: "DATA" i "DATA ". Nie wiem, może to zamierzone, ale może się stać przyczyną problemu, gdyby po znalezionym fragmencie DATA nie występowała spacja.

Ad obrazki: wstaw plik graficzny jako załącznik. Formularz załączania jest umieszczony poniżej pola edycyjnego.
JJ
LO (24.2|7.6) ∙ Python (3.12|3.11|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
michal.s
Posty: 86
Rejestracja: pn sty 23, 2012 6:55 pm

Re: Funkcja JEŻELI - problem z polem 'test logiczny'

Post autor: michal.s »

Przechwytywanie_3.JPG
Pozdrawiam Michał
OpenOffice3.3 na Windows 7
Awatar użytkownika
Jermor
Posty: 2352
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Funkcja JEŻELI - problem z polem 'test logiczny'

Post autor: Jermor »

Koledzy,
w LibreOffice pojawia się #VALUE!
w Apache OpenOffice #ARG!
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.
michal.s
Posty: 86
Rejestracja: pn sty 23, 2012 6:55 pm

[SOLVED] Re: Funkcja JEŻELI - problem z polem 'test logiczny

Post autor: michal.s »

Tak też myślałem Jermor, ale myślę że to bardzo ważna uwaga.
Dziękuję.
Pozdrawiam Michał
OpenOffice3.3 na Windows 7
ODPOWIEDZ