WYSZUKAJ.PIONOWO - wiele liczb w jednej komórce

Użytkowanie arkusza kalkulacyjnego
Linmot
Posty: 3
Rejestracja: wt lis 13, 2018 2:58 pm

WYSZUKAJ.PIONOWO - wiele liczb w jednej komórce

Post autor: Linmot »

Czołem mądrzy i dobrzy!

Przeczytałem wszystkie wątki wyszukaj pionowo, ale albo nie znalazłem albo nie potrafię zrozumieć. Pomocy!
Często używam funkcji wyszukaj pionowo, ale zawsze w odniesieniu do komórek, które pokrywają się treścią. Teraz spośród zbioru liczb i nazw chcę znaleźć tą właściwą

szukam wartości 163631280

spośród

6 304 525
163631280
4PAH35500200
4PA-H3550-0200
T.18.16.01.05/1
MBK
CW R BOOSTER ROAD 50 (94-95)
YM FIZZ 50 (94-95)
CW BOOSTER SPIRIT 50 (96-98)
CW BOOSTER 50 (01-02)
CW L BOOSTER 50 (01-03)
CW SP BOOSTER SPIRIT EURO 2 50 (02)
CW BOOSTER SPIRIT EURO 2 50 (03)
CW BOOSTER SPIRIT 50 (99-00)
CW L BOOSTER SPIRIT 50 (03)
CW BOOSTER SPIRIT EURO 2 50 (02)
Trasmissione contaKm
Speedometer Transmission

moja formuła=WYSZUKAJ.PIONOWO(B1379;Arkusz3.$A$1:$G$900:4;0) - nie działa
Libre Office Wersja: 5.3.3.2
Jan_J
Posty: 4560
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: WYSZUKAJ.PIONOWO - wiele liczb w jednej komórce

Post autor: Jan_J »

Czwarty opcjonalny parametr decyduje o przyjęciu założenia dot. porządku w danych, i o wyborze optymalnej metody, a także o interpretacji możliwego efektu. Domyślnie ma wartość 1, co skutkuje założeniem o uporządkowaniu niemalejącym.

Dodatkowo, wartość 0 parametru trzeciego (nr kolumny wynikowej) jest nielegalna.

Więcej: https://help.libreoffice.org/Calc/Sprea ... AJ.PIONOWO (wspaniały mix PL+EN, życzę cierpliwej lektury).
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: 2256
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: WYSZUKAJ.PIONOWO - wiele liczb w jednej komórce

Post autor: Jermor »

Linmot pisze:moja formuła=WYSZUKAJ.PIONOWO(B1379;Arkusz3.$A$1:$G$900:4;0) - nie działa
Co to znaczy?
Jeśli jest tak wpisana jak to przedstawiłeś w poście, to ta formuła jest błędnie napisana. Dwukropek przed cyfrą 4. A jeśli jest poprawnie wpisana to musi dawać jakiś wynik. Zakładając, że dwukropek jest w twoim przypadku jednak średnikiem, to zwraca wartość z czwartej kolumny obszaru, czyli z kolumny D. Gdy poszukiwanej wartości nie ma zwracana jest wartość #N/D. Aby otrzymać jako wynik funkcji wyszukiwaną wartość należy podać numer kolumny 1.
Niezależnie od rozważań o WYSZUKAJ.PIONOWO może lepiej byłoby użyć PODAJ.POZYCJĘ(B1379;Arkusz3.$A$1:$A$900;0) a nawet (ponieważ używasz LibreOffice)

Kod: Zaznacz cały

=JEŻELI.BŁĄD(PODAJ.POZYCJĘ(B1379;Arkusz3.$A$1:$A$900;0);"Pozycja nie wystepuje")
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.
Linmot
Posty: 3
Rejestracja: wt lis 13, 2018 2:58 pm

Re: WYSZUKAJ.PIONOWO - wiele liczb w jednej komórce

Post autor: Linmot »

Dzięuję za odpowiedź w mojej sprawie a także szybkie zajęcie się problemem. Niestety puki co bez rezultatu (załącznik)
Jan_J pisze:Więcej: https://help.libreoffice.org/Calc/Sprea ... AJ.PIONOWO (wspaniały mix PL+EN, życzę cierpliwej lektury).
Moje dane nie są uporządkowane ascending order a zatem parametr "0"
Jermor pisze:PODAJ.POZYCJĘ
Jermor pisze:=JEŻELI.BŁĄD
- poszedłem tym tropem, ale nie znajduje niczego :(
Załączniki
ARKUSZ NA FORUM.ods
(12.48 KiB) Pobrany 178 razy
Libre Office Wersja: 5.3.3.2
Jan_J
Posty: 4560
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: WYSZUKAJ.PIONOWO - wiele liczb w jednej komórce

Post autor: Jan_J »

Linmot pisze:puki
s/u/ó/
Linmot pisze:Moje dane nie są uporządkowane ascending order a zatem parametr "0"
OK, ale chodzi o CZWARTY, a nie TRZECI parametr.

WYSZUKAJ.PIONOWO(wartość; blok; kolumna; tryb) i INDEKS(blokwynikowy; PODAJ.POZYCJĘ(wartość; blok; tryb)) dają równoważne wyniki.
Linmot pisze:=JEŻELI.BŁĄD - poszedłem tym tropem, ale nie znajduje niczego :(
A to już jest kosmetyka.

W Twoim załączniku widzę, że przeszukiwany ciąg jest długim tekstem porozdzielanym enterami, ale ulokowanym w POJEDYNCZEJ KOMÓRCE. Funkcje wyszukujące są w tym przypadku bezradne.

Musisz tak przeorganizować swoje dane, żeby każda prosta wartość (np., 6 304 473 511,
00G01605021,
163631520,
DERBI , itd.) wskoczyła do odrębnej komórki.
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: 2256
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: WYSZUKAJ.PIONOWO - wiele liczb w jednej komórce

Post autor: Jermor »

Mam wrażenie, że trzeba lepiej znać kontekst tego problemu aby pomóc w jego rozwiązaniu.
Wyszukiwana w twoim przykładzie wartość "163631520" nie może zostać znaleziona przez funkcję WYSZUKAJ.PIONOWO bo wartość ta jest wyszukiwana w pierwszej kolumnie wskazanego obszaru. Tak działa funkcja WYSZUKAJ.PIONOWO. Ponieważ w funkcji wskazałeś obszar A1:D900 to przeszukiwana jest kolumna A, a w niej znajduje się póki co tylko "LDEA50A".
Tobie zdaje się chodzi o przeszukiwanie kolumny B. W niej jednak tekst jest bardzo długi a dodatkowo wpisany jest z przełamywaniem do nowego wiersza. Chciałbyś znaleźć wiersz, w którym znajduje się wskazany przez ciebie fragment. To jest do zrobienia ale chyba najpierw lepiej byłoby dowiedzieć się o co tak naprawdę chodzi w tym wyszukiwaniu.
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: 2256
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: WYSZUKAJ.PIONOWO - wiele liczb w jednej komórce

Post autor: Jermor »

Jeszcze małe uzupełnienie. W temacie swojego postu napisałeś
...wiele liczb w jednej komórce
jeśli tak rzeczywiście ma zostać to oznacza, że w twoich 900 wierszach arkusza znajdują się wielowierszowe wpisy. Funkcja WYSZUKAJ.PIONOWO dopuszcza użycie wyrażeń regularnych, co pozwoli znaleźć wiersz zawierający potrzebny fragment. Trzeba jednak wiedzieć, że zawsze zostanie zwrócona informacja o pierwszym znalezionym fragmencie. Jeżeli podany przez ciebie w przykładzie ciąg cyfr "163631280" wystąpi w wielu pozycjach, to i tak jako znaleziona zostanie potraktowane pierwsze wystąpienie.
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.
Linmot
Posty: 3
Rejestracja: wt lis 13, 2018 2:58 pm

Re: WYSZUKAJ.PIONOWO - wiele liczb w jednej komórce

Post autor: Linmot »

Dzień dobry,

Jeszcze raz dziękuję za poświęcony czas.

Niestety poniższa rada jest niemożliwa to wykonania. to właśnie enter oddziela poszczególne liczby, opisy.
Jan_J pisze:Musisz tak przeorganizować swoje dane, żeby każda prosta wartość (np., 6 304 473 511,
00G01605021,
163631520,
DERBI , itd.) wskoczyła do odrębnej komórki.
jeśli tak rzeczywiście ma zostać to oznacza, że w twoich 900 wierszach arkusza znajdują się wielowierszowe wpisy. Funkcja WYSZUKAJ.PIONOWO dopuszcza użycie wyrażeń regularnych, co pozwoli znaleźć wiersz zawierający potrzebny fragment. Trzeba jednak wiedzieć, że zawsze zostanie zwrócona informacja o pierwszym znalezionym fragmencie. Jeżeli podany przez ciebie w przykładzie ciąg cyfr "163631280" wystąpi w wielu pozycjach, to i tak jako znaleziona zostanie potraktowane pierwsze wystąpienie.

Ciąg cyfr 163631280 jest zawsze unikalny. Znajduje się w jednej komórce w którymś wierszu, albo nie. Ale nigdy się nie powtarza.
Libre Office Wersja: 5.3.3.2
Jan_J
Posty: 4560
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: WYSZUKAJ.PIONOWO - wiele liczb w jednej komórce

Post autor: Jan_J »

Linmot pisze: Niestety poniższa rada jest niemożliwa to wykonania. to właśnie enter oddziela poszczególne liczby, opisy.
Jan_J pisze:Musisz tak przeorganizować swoje dane, żeby każda prosta wartość (np., 6 304 473 511,
00G01605021,
163631520,
DERBI , itd.) wskoczyła do odrębnej komórki.
Nie rozumiemy się.

Ma być tak:
A1: abecede
A2: kukulala
A3: abraka dabra
itd.

Jest tak:
A1: abcecede<Enter>kukulala<Enter>abraka dabra

Efektywne wyszukiwanie Calc prowadzi w kolumnie, a nie wewnątrz komórki. Bez przeorganizowania zapisu korzystanie z funkcji typu Podaj.pozycję albo Wyszukaj nie będzie możliwe, a metody analizowania zawartości jednej komórki są zbyt kłopotliwe w stosowaniu, by się opłacało z nich korzystać w tym przypadku.
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: 2256
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: WYSZUKAJ.PIONOWO - wiele liczb w jednej komórce

Post autor: Jermor »

Ponieważ twoje komórki zawierają wewnątrz znaki ENTER musisz zbudować wyrażenie regularne do wyszukiwania tego fragmentu tekstu w inny sposób.
Wyszukiwany fragment wpisujesz do komórki B1379 (tak wynika z pierwszego postu) to formuła WYSZUKAJ.PIONOWO powinna wyglądać tak:

Kod: Zaznacz cały

=WYSZUKAJ.PIONOWO("[[:print:][:cntrl:]]*"&B1379&"[[:print:][:cntrl:]]*";$A$1:$G$900;4;0)
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: 2256
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: WYSZUKAJ.PIONOWO - wiele liczb w jednej komórce

Post autor: Jermor »

Z tym, że jeśli organizacja twojego arkusza jest taka jak w załączonym przez ciebie przykładzie, to wyszukiwana wartość jest (albo powinna być) w kolumnie B a to znaczy, że zakresem wskazanym w formule powinien być $B$1:$G$900.I w związku z tym trzeci parametr to 3 a nie 4.
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