lista wybierania + wyszukiwanie

Użytkowanie arkusza kalkulacyjnego
Mariusz K.
Posty: 11
Rejestracja: śr mar 27, 2013 3:11 pm

lista wybierania + wyszukiwanie

Post autor: Mariusz K. »

Witam

Taki mały problem się pojawił
2 arkusze - najpierw zacznę od drugiego arkusza - jego nazwa to"nazwa". Kolumna A zawiera nazwę firmy i adres, kolumna B zawiera NIP tych firmy. Jest 100 rekordów w kolumnie A i B. Arkusz 1 nazywa się "rejestr". Kolumna A to liczba porządkowa, B data sprzedaży, C data wystawienia dokumentu, D Nazwa i adres, E NIP, F numer dokumentu, itd.
W kolumnie D zrobiona jest lista wybierania na podstawie danych z arkusza "nazwa". W kolumnie E chciałbym żeby pojawiał się NIP po wybraniu firmy z listy w kolumnie D.
Fajnie byłoby gdyby ktoś to po chłopsku wytłumaczył - znalazłem podobne rozwiązania, ale nie umiem ich dostosować do swoich potrzeb.

Dziękuję i pozdrawiam
UBUNTU + LibreOffice 4.3.7.2
Husar
Posty: 203
Rejestracja: śr mar 06, 2013 3:48 am

Re: lista wybierania + wyszukiwanie

Post autor: Husar »

Użyj funkcji WYSZUKAJ.PIONOWY. W helpie Calca masz bardzo dobrze wyjaśnione jak użyć funkcji. Użyj Kreatora funkcji. Podpowiem tylko, że ostatni parametr pozostaw pusty.
Pozdrawiam
Roman

Daj znać [SOLVED], kiedy Twój problem zostanie rozwiązany
LO 7.2.x/AOO 4.1.x. używane na Ubuntu 20.04LTS i M$ Windows 10
Mariusz K.
Posty: 11
Rejestracja: śr mar 27, 2013 3:11 pm

Re: lista wybierania + wyszukiwanie

Post autor: Mariusz K. »

nadal potrzebna pomoc - instrukcje czytałem, podobne wątki też, ale efekt nadal taki sam - błąd
W moim przypadku czym jest kolumna D, E oraz A i B?
Załączniki
rejestr testowy.ods
(25.74 KiB) Pobrany 341 razy
UBUNTU + LibreOffice 4.3.7.2
Husar
Posty: 203
Rejestracja: śr mar 06, 2013 3:48 am

Re: lista wybierania + wyszukiwanie

Post autor: Husar »

Składnia:

Kod: Zaznacz cały

=WYSZUKAJ.PIONOWO(kryterium_wyszukiwana;macierz;indeks;kolejność_sortowania)
Kryterium_wyszukiwania to komórka, którą chcesz porównywać z bazą firm, czyli komórka w kolumnie D w arkuszu "rejestr"

Macierz to zakres danych w których mają być wyszukiwane dane (baza firm), czyli komórki w kolumnach A i B w arkuszu "nazwa".

Indeks to nr kolumny z której ma być pobrana dana, masz dwie kolumny w bazie, pierwsza to nazwa firmy z adresem a druga to co chcesz, żeby wstawiło, więc wpisujesz ... :-)

Kolejność_sortowania pomijasz

Formułę wpisujesz w pierwszej komórce kolumny E w arkuszu "rejestr" i potem przeciągasz w dół.
Pozdrawiam
Roman

Daj znać [SOLVED], kiedy Twój problem zostanie rozwiązany
LO 7.2.x/AOO 4.1.x. używane na Ubuntu 20.04LTS i M$ Windows 10
Mariusz K.
Posty: 11
Rejestracja: śr mar 27, 2013 3:11 pm

Re: lista wybierania + wyszukiwanie

Post autor: Mariusz K. »

czyli powinno być
=WYSZUKAJ.PIONOWO(D6;nazwa.A2:B4;nazwa.B2:B4)
wynik - #ARG!
czy nie brakuje warunkowania?
UBUNTU + LibreOffice 4.3.7.2
Husar
Posty: 203
Rejestracja: śr mar 06, 2013 3:48 am

Re: lista wybierania + wyszukiwanie

Post autor: Husar »

Indeks miał być numerem kolumny. Masz dwie kolumny w macierzy. Nr 1 to nazwy firm. Nr 2 to NIPy, czyli to co chcesz uzyskasz. A więc Indeks to 2 a nie zakres B2:B4
Pozdrawiam
Roman

Daj znać [SOLVED], kiedy Twój problem zostanie rozwiązany
LO 7.2.x/AOO 4.1.x. używane na Ubuntu 20.04LTS i M$ Windows 10
Mariusz K.
Posty: 11
Rejestracja: śr mar 27, 2013 3:11 pm

Re: lista wybierania + wyszukiwanie

Post autor: Mariusz K. »

prawie się udało - przy niektórych wynikach pojawia się błąd #N/D - co jest powodem?

Dzięki dodaniu =JEŻELI(CZY.PUSTA(D6);"";WYSZUKAJ.PIONOWO(D6;nazwa.A2:B100;2))
nie ma problemu z formułą gdy kolumna D nie jest wypełniona.
Załączniki
rejestr testowy.ods
(22.07 KiB) Pobrany 337 razy
UBUNTU + LibreOffice 4.3.7.2
Jan_J
Posty: 4653
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: lista wybierania + wyszukiwanie

Post autor: Jan_J »

Zajrzyj do dokumentacji (helpa) funkcji Wyszukaj.Pionowo.
Czwarty opcjonalny argument decyduje o metodzie wyszukiwania. Domyślny (1) działa szybko, ale wymaga uporządkowania tabeli i nie gwarantuje, że wynik będzie dopasowany do kryterium, ani że dopasuje pierwszy zgodny wpis. 0 prowadzi do powolnego przeszukiwania nieczułego na kolejność, i jeżeli coś poda, będzie to pierwszy dopasowany wpis.
JJ
LO (26.2) ∙ Python (3.13|3.10) ∙ Unicode 17 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
Mariusz K.
Posty: 11
Rejestracja: śr mar 27, 2013 3:11 pm

Re: lista wybierania + wyszukiwanie

Post autor: Mariusz K. »

=JEŻELI(CZY.PUSTA(D6);"";WYSZUKAJ.PIONOWO(D6;nazwa.A2:B7;2;0)) - działa
teraz świat jest prostszy. Jeszcze tylko muszę poszukać jak w wyszukiwaniu włączyć alfabetyczne wyszukiwanie.
Teraz kolejne wyzwanie - jedna baza danych z klientami do rejestru sprzedaży, KPIR, faktur
UBUNTU + LibreOffice 4.3.7.2
Husar
Posty: 203
Rejestracja: śr mar 06, 2013 3:48 am

Re: lista wybierania + wyszukiwanie

Post autor: Husar »

Przepraszam mój błąd.
Pozdrawiam
Roman

Daj znać [SOLVED], kiedy Twój problem zostanie rozwiązany
LO 7.2.x/AOO 4.1.x. używane na Ubuntu 20.04LTS i M$ Windows 10
Mariusz K.
Posty: 11
Rejestracja: śr mar 27, 2013 3:11 pm

Re: lista wybierania + wyszukiwanie

Post autor: Mariusz K. »

Dziękuję Panowie, bez waszej pomocy nie ruszyłbym z miejsca.
UBUNTU + LibreOffice 4.3.7.2
jamaly
Posty: 4
Rejestracja: wt gru 08, 2015 8:32 pm

Re: lista wybierania + wyszukiwanie

Post autor: jamaly »

witam
nawiązuje do tego opisu bo zastosowaniu tej funkcji zwraca mi ostatnią wartość ze wskazanej kolumny - co może być nie tak?
OpenOffice 4.12 na Windows 7 Prof
Jan_J
Posty: 4653
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: lista wybierania + wyszukiwanie

Post autor: Jan_J »

Ostatnie 0 w wyszukaju nakazuje traktować spis jako nieuporządkowany. Czy przypadkiem go nie brakuje w Twojej formule?
JJ
LO (26.2) ∙ Python (3.13|3.10) ∙ Unicode 17 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
jamaly
Posty: 4
Rejestracja: wt gru 08, 2015 8:32 pm

Re: lista wybierania + wyszukiwanie

Post autor: jamaly »

niestety ale wychodzi n/d
taką ma postać =JEŻELI(CZY.PUSTA(F3);"";WYSZUKAJ.PIONOWO(F3;$AG$2:$AH$3800;1;0))
co jeszcze może być nie tak?
OpenOffice 4.12 na Windows 7 Prof
Husar
Posty: 203
Rejestracja: śr mar 06, 2013 3:48 am

Re: lista wybierania + wyszukiwanie

Post autor: Husar »

Przypuszczalnie formuła nie znajduje w zakresie AG2:AH3800 wartości z F3. Spróbuj obsługi błędów. Np:

Kod: Zaznacz cały

=JEŻELI(CZY.BŁĄD(JEŻELI(CZY.PUSTA(F3);"";WYSZUKAJ.PIONOWO(F3;$AG$2:$AH$3800;1;0)));"Nie ma takiej wartości w bazie!!!";JEŻELI(CZY.PUSTA(F3);"";WYSZUKAJ.PIONOWO(F3;$AG$2:$AH$3800;1;0)))
Zastanawia mnie ta 1. Formuła, będzie zwracać to samo co jest w F3.
Pozdrawiam
Roman

Daj znać [SOLVED], kiedy Twój problem zostanie rozwiązany
LO 7.2.x/AOO 4.1.x. używane na Ubuntu 20.04LTS i M$ Windows 10
jamaly
Posty: 4
Rejestracja: wt gru 08, 2015 8:32 pm

Re: lista wybierania + wyszukiwanie

Post autor: jamaly »

po wprowadzeniu tej formuły =JEŻELI(CZY.BŁĄD(JEŻELI(CZY.PUSTA(F3);"";WYSZUKAJ.PIONOWO(F3;$AG$2:$AH$3800;1;0))) wychodzi "PRAWDA" i nie zwraca żadnej wartości a jedynie fakt, że jest w zakresie ta sama nazwa.
wartość "1" wskazuje na 1 kolumnę z której ma być pobrana dana. co jeszcze mogę sprawdzić?
OpenOffice 4.12 na Windows 7 Prof
Husar
Posty: 203
Rejestracja: śr mar 06, 2013 3:48 am

Re: lista wybierania + wyszukiwanie

Post autor: Husar »

Jak masz skonstruowaną "bazę danych"? W pierwszej kolumnie macierzy powinieneś mieć to co chcesz znaleźć na podstawie wartości w F3 a w drugiej kolumnie to co chcesz uzyskać wyszukując w pierwszej kolumnie.
Jeśli w formule użyjesz wartości 1 jako nr kolumny w macierzy to:
wynik formuły gdy nr kolumny macierzy = 1
wynik formuły gdy nr kolumny macierzy = 1
Zrzut-calc1.png (10.57 KiB) Przejrzano 6689 razy
Jeśli 2 to:
wynik formuły gdy nr kolumny macierzy = 2
wynik formuły gdy nr kolumny macierzy = 2
Składnia funkcji WYSZUKAJ.PIONOWO:

Kod: Zaznacz cały

=WYSZUKAJ.PIONOWO(kryterium_wyszukiwana;macierz;indeks;kolejność_sortowania)
Kryterium_wyszukiwania to komórka, którą chcesz porównywać z bazą daych, czyli komórka w kolumnie F czyli np. F3

Macierz to zakres danych w których mają być wyszukiwane dane (baza danych), czyli komórki w kolumnach AG i AH.

Indeks to nr kolumny z której ma być pobrana dana, masz dwie kolumny w bazie (AG i AH), pierwsza to nazwy powiedzmy aaa1...aaacośtam a druga to co chcesz np. wartości od 1 do ..., więc wpisujesz 2 nie 1

Kolejność_sortowania wpisujesz 0

P.S. Nie użyłeś całej formuły z mojego poprzedniego postu, ale to nieistotne.
Pozdrawiam
Roman

Daj znać [SOLVED], kiedy Twój problem zostanie rozwiązany
LO 7.2.x/AOO 4.1.x. używane na Ubuntu 20.04LTS i M$ Windows 10
arras_1
Posty: 148
Rejestracja: czw lip 19, 2012 8:08 pm

Re: lista wybierania + wyszukiwanie

Post autor: arras_1 »

Problem może leżeć w wyrażeniach regularnych (np. koszulka(10szt), przy włączonych wyrażeniach regularnych jest już problem z znalezieniem tego)
OpenOffice.org 4.1.3 , Windows 10
jamaly
Posty: 4
Rejestracja: wt gru 08, 2015 8:32 pm

Re: lista wybierania + wyszukiwanie

Post autor: jamaly »

dzięki działa ale okazuej się, że baza ma usunięte znaki specjalne i część muszę wyszukiwać ręcznie - jak w tej strukturze wygląda wyszukiwanie po pierwszych 10 znakach?
OpenOffice 4.12 na Windows 7 Prof
Husar
Posty: 203
Rejestracja: śr mar 06, 2013 3:48 am

Re: lista wybierania + wyszukiwanie

Post autor: Husar »

@jamaly, nie wiem jak zrobić wyszukiwanie po pierwszych 10 znakach (nigdy nie próbowałem), ale można zrobić listę rozwijaną w F3 z zakresem na nazwach jakie masz w $AG$2:$AG$3800 (jeśli baza będzie rozwijana to proponuję rozszerzyć listę np. do $AG$4000).
Niestety wyszukiwanie nie zadziała przy włączonych wyrażeniach regularnych (błąd #N/D) tak jak wspomniał @arras_1. Wyrażenia wyłącza się Narzędzia --> Opcje --> LibreOffice Calc --> Oblicz
Pozdrawiam
Roman

Daj znać [SOLVED], kiedy Twój problem zostanie rozwiązany
LO 7.2.x/AOO 4.1.x. używane na Ubuntu 20.04LTS i M$ Windows 10
Husar
Posty: 203
Rejestracja: śr mar 06, 2013 3:48 am

Re: lista wybierania + wyszukiwanie

Post autor: Husar »

Jakbyś miał dalej problemy to zajrzyj tu post @Belstara. Dopiero zauważyłem.
Pozdrawiam
Roman

Daj znać [SOLVED], kiedy Twój problem zostanie rozwiązany
LO 7.2.x/AOO 4.1.x. używane na Ubuntu 20.04LTS i M$ Windows 10
ODPOWIEDZ