Fórum pro uživatele kancelářského balíku OpenOffice | LibreOffice
 

#1 1. 2. 2023 15:55:33

Eddie60
Člen
Registrace: 5. 2. 2022
Příspěvků: 38

VLOOKUP - změna oblasti pro vyhledávání - VYŘEŠENO

Dobrý den,
po delší době se na vás obracím se žádostí o pomoc.
   
Velmi často používám fukci VLOOKUP s jedním (někdy i více parametry) pro vyhledávání.
Vše funguje bez problémů do okamžiku, kdy do vyhledávací oblastí přidám/odstraním sloupec.
Tím se změní hodnota Indexu a zobrazí se jiné údaje (viz odkaz; listy "Data_2" a "list2").
Je to velmi zjednodušený příklad. Používám až 10 listů (v některých až 50 sloupců).
   
https://drive.google.com/file/d/15YgAfZ … share_link
   
Lze tuto situaci nějak ošetřit?
   
Zaregistroval jsem, že u vzorců s odkazem na jiný list musím používat absolutní hodnotu i u názvu listu
(např. "=VLOOKUP($A2;$Data_2.$A$2:$Data_2.$C$13;3;0)"), aby nebyl problém při kopírování listu s vložením na začátek/konec.
Není to chyba? Názvy listů jsou snad jedinečné.
Děkuji.

Editoval Eddie60 (1. 2. 2023 22:27:52)

Offline

#2 1. 2. 2023 17:52:03

lp.
Člen
Registrace: 24. 9. 2009
Příspěvků: 844

Re: VLOOKUP - změna oblasti pro vyhledávání - VYŘEŠENO

Lze.

Prostě si index dosaďte vzorcem.

=VLOOKUP($A2;$Data_2.$A$2:$Data_2.$C$13;match("jmeno sloupce", $Data_2.$A$1:$Data_2.$C$1;0);0)

Offline

#3 1. 2. 2023 18:14:45

neutr
Člen
Registrace: 8. 3. 2007
Příspěvků: 3,446

Re: VLOOKUP - změna oblasti pro vyhledávání - VYŘEŠENO

Eddie60 napsal(a)

.. Velmi často používám fukci VLOOKUP s jedním (někdy i více parametry) pro vyhledávání.
Vše funguje bez problémů do okamžiku, kdy do vyhledávací oblastí přidám/odstraním sloupec.
Tím se změní hodnota Indexu a zobrazí se jiné údaje (viz odkaz; listy "Data_2" a "list2").
Je to velmi zjednodušený příklad. Používám až 10 listů (v některých až 50 sloupců).
   
https://drive.google.com/file/d/15YgAfZ … share_link
   
Lze tuto situaci nějak ošetřit?
   
Zaregistroval jsem, že u vzorců s odkazem na jiný list musím používat absolutní hodnotu i u názvu listu
(např. "=VLOOKUP($A2;$Data_2.$A$2:$Data_2.$C$13;3;0)"), aby nebyl problém při kopírování listu s vložením na začátek/konec.
Není to chyba? Názvy listů jsou snad jedinečné.
Děkuji.

     S těmi sloupci je to tak, že jde o relativní blok počínaje jedničkou a konče například čtyřkou, ačkoliv tan první sloupec je ve slouci "B" a poslední v "F". Takže čte se z relativního bloku nikoliv z označení sloupců. Proto když přidáte, nebo uberete sloupec mezi prvním a posledním, čtou se stále relativní pozice - v prvním sloupci se vyhledává údaj vždy a odpovídající relaci volíme například z druhého, nebo třetího sloupce a podobně.
     S listy je to podobné. Například vyhledáváte v 5. listu hodnotu z dat prvního sloupce. Když například to celé zkopírujete do 6. listu čte už data z druhého listu. Proto se musí zafixovat i název listu zdroje který není shodný s listem na kterém je vzorec. Z principu tedy zadáváme absolutní adresy i pro listy, nejen pro úseky.
     Když byste například zkopíroval v 5. sloupci vzorce a ty vložil do jiného sloupce téhož listu, posune se čtený úsek, který je sice na stejném listu, ale čte úsek o něco "vedle". Myslím, že když se zamyslíte, přijdete na to, že oboje adresování je potřebné v různých modifikacích, nebo spíš kombinacích.


     Někdy potřebujete stejný úsek na různých listech a jindy jiný úsek na stejném, nebo různém listu. Stačí se přesvědčit o skládání dat vedle sebe a pod sebe. Tedy Vlookup je kompaktní relativní úsek, kde jsou údaje z různých sloupců vedle sebe. Co když ale chcete ze stejného úseku data z různých sloupců pod sebe?
     Totéž platí při porovnávání podobných dat z různých listů. Tato data bývají hodně podobná a potřebujete je dostat pod sebe, aby se daly získat rozdílné položky. Takže v prvním sloupci bude například list, ve druhém název hledané položky a ve třetím aktuální hodnota - například ceny. Jde o rutinu, která bývá doplněna doporučením, aby se vzorce před tříděním převedly na hodnoty (aby se nemohly měnit). To je ale vedlejší.


Moje e-mailová adresa
Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte orientaci při vyhledávání řešení JAK OZNAČIT TÉMA ZA VYŘEŠENÉ

Offline

#4 1. 2. 2023 22:27:10

Eddie60
Člen
Registrace: 5. 2. 2022
Příspěvků: 38

Re: VLOOKUP - změna oblasti pro vyhledávání - VYŘEŠENO

Super, až na malou chybičku ve vzorci, kterou jsem opravil (místo "," má být ";"), vše funguje.
=VLOOKUP($A2;$Data_2.$A$2:$Data_2.$C$13;match("jmeno sloupce"; $Data_2.$A$1:$Data_2.$C$1;0);0)
Děkuji za pomoc.

Offline

Zápatí