realphoto napsal(a)Nefunguje mi vzoreček, ........
=INDEX(kosmas.B10:B100;MATCH(B799;kosmas.H1:H100;0);1)
A) Mám jeden list ("kosmas") s hlášením o prodejích knih, na něm potřebuji vyhledat název knihy a vložit počet prodaných kusů do příslušné buňky v listu s přehledy prodejů.
B) Šlo by to i mezi sešity? Jak by pak vypadal vzoreček s kopírováním ze sešitu xxx.xls a listu yyy?
Díky!
Celkem pochybuji o tom co se má vrátit pomocí Vašeho vzorce. Jde o Základ "INDEX" který testuje viz nápověda následující :
INDEX
INDEX vrací podoblast specifikovanou čísly řádků a sloupců nebo volitelným indexem oblasti. V závislosti na obsahu INDEX vrací odkaz nebo obsah.
Syntaxe
INDEX(Odkaz; Řádek; Sloupec; Oblast)
Odkaz je přímý odkaz nebo odkaz na pojmenovanou oblast. Pokud se rozhodnete odkazovat na vícenásobnou oblast, musíte odkaz na ní nebo její název uzavřít do závorek.
Řádek (nepovinné) určuje řádek odkazované oblasti, pro který mají být vráceny hodnoty. Pokud je nastavena hodnota nula (žádný určitý řádek), jsou vráceny všechny odkazované řádky.
Sloupec (nepovinné) určuje sloupec odkazované oblasti, pro který mají být vráceny hodnoty. Pokud je nastavena hodnota nula (žádný určitý sloupec), jsou vráceny všechny odkazované sloupce.
Oblast (nepovinné) určuje číslo podoblasti, pokud je odkazováno na vícenásobnou oblast.
Potom rozborem vzorce dojdeme k žádanému výsledku :
1. =INDEX(kosmas.B10:B100; .. Bez pochyby vracíte oblast ta je podle nejnovější nápovědy určena pouze pojmenovaným úsekem ale vím že "postaru" stačilo zadání tak jak máte, jen s tím že před jménem sešitu musí být dola. Ještě před tím stačilo uvést list do jednoduchých či dvojitých uvozovek. Tohle mi už ne W7 LO 6.2.2.2 (x64) nefunguje správně - proto to asi není uvedeno.
2. MATCH(B799;kosmas.H1:H100;0) ... Match vrátí relativní polohu prvku v poli, který se shoduje se zadanou hodnotou. Funkce vrací číselnou pozici hodnoty nalezené v vyhledávací_pole. Tedy v podstatě jde o číslo pořadí v seznamu hodnot a používáme ho například pro určení poředí z tabulky výsledků které nejsou (nemohou být) seřazeny.
3. ;1) ..... To je pokračování vzorce "INDEX."
Připadá mi, že by vzorec měl vrátit například tituly od nějlepší k nejhorší prodejnosti, nebo skladovou zásobu a podobně. To by šlo řešit jinak. celkem ale pochybuji o tomto :
MATCHB799;...). To znamená, že v jiném (prvním) listu máte ve sloupci B seznam titulů shodný se sloupcem B v listu "kosmas". Tedy v podstatě jde o seřazení obsahu z listu "kosmas" typu TOP 100 protože jak je vidět sloupec B má nejméně 789 položek - vrátit se má jen 100. Na to by měl stačit "MATCH", nebo možná RANK (je jich více podle toho jak přidělují stejným hodnotám pořadí ap). Proto celkem váhám co a proč se má vrátit.
Potřeba výše popsaná se dá řešit například konstrukcí ze samostatného vzorce SMALL, nebo LARGE podle toho jak potřebujete řadit. Určitě by mohlo být uvedeno více správných konstrukcí. Například pomocí SUMIF a další různé konstrukce.
Další problematikou je možnost výskytu stejně validních položek podle prodeje. Tady jde o možnost zadat pořadí o které se dělí více titulů (zajistí RANK).
___________________________________________________________________________________
Načítání z externího zdroje lze například vložením listu z uvedeného externího zdroje, nebo jen pomocí DDE vložit oblast a podobně OLE. Moc bych nedoporučoval testovat něco jiného. Vzorce z Calcu mohou narazit na problém v Excelu. To bych doporučil spíš makro.
Nejlepší cestou je tedy vložení listu a pak jde o řešení ve stejném sešitu. Ale ve skutečnosti může jít o potřeby kterým takové řešení nevyhovuje.
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É