Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Excel: reference na jiný list podle hodnoty buňky

Ahojte,
nevím jestli mám jen mhu nebo mi něco uniká...
Řeším v Excelu vložení reference na jiný list téhož workbooku, což je za normálního stavu sranda.
Ale rád bych jméno listu přebíral z hodnoty jiné buňky a nechci ho tam mít napsané natvrdo. A narážím...

Mrkněte prosím na příklad, bude to asi jasnější... jak na to?

Díky!

Řešení:

pokiaľ sa odkazuješ na hárky vlastného zošita, apostrofy nepotrebuješ, stačí výkričník.
Tvoj prípad bude:

=INDIRECT(C3 & "!B3")
resp
=NEPŘÍMÝ.ODKAZ(C3 & "!B3")

t.j. vytvorí odkaz z obsahu bunky C3 a reťazca "B3" (plus oddeľovač "!")

Tento vzorec je vyplniteľný nadol ale musíš si uvedomiť, že B3 ostáva konštantné, keďže ide o tvrdý reťazec, nie odkaz na bunku B3.
Vyplnením sa bude meniť len bunka obsahujúca názov hárka.
To je OK, lebo na každom hárku máš požadovaný obsah v bunke B3.
Ale na každom hárku bude len jeden záznam?

Předmět Autor Datum
Zkus INDIRECT alias NEPŘÍMÝ. ODKAZ
host 12.11.2019 11:00
host
Na list Summary si dej (někam) adresu té buňky z listů, kterou chceš zobrazovat, u tebe B3. Dej ji n…
L-Core 12.11.2019 11:01
L-Core
Samozřejmě, že šlo - pamatuj, že v Excelu jde (skoro) všechno! Akorát (zatím) neumí vařit, prát a že…
MachR55 12.11.2019 11:27
MachR55
pokiaľ sa odkazuješ na hárky vlastného zošita, apostrofy nepotrebuješ, stačí výkričník. Tvoj prípad…
robert13 12.11.2019 11:42
robert13
Díky, hledal jsem v tom víc složitostí, než bylo potřeba.... Na sheetech budou záznamy přibývat ale…
Moas 12.11.2019 14:19
Moas
Dá sa urobiť i to, že vyplnením nadol bude vzorec napĺňať i ostatné záznamy zo zdrojového hárka, ale…
robert13 12.11.2019 17:07
robert13
To je šílené, jak je to moje řešení podle tvého šílené… :-x
L-Core 12.11.2019 14:55
L-Core
To nič, dôležité je, aby vzorec fungoval. Každý problém sa dá riešiť x cestami a nie vždy kole oči t… poslední
robert13 12.11.2019 17:10
robert13

Na list Summary si dej (někam) adresu té buňky z listů, kterou chceš zobrazovat, u tebe B3. Dej ji např. do A1, prostě tam napiš b3
Vzorec v D3 (Summary) pak bude:

=NEPŘÍMÝ.ODKAZ("'"&C3&"'!"&A$1)

Dá se rozkopírovat dolů.
Ve sloupci C musí být ty názvy listů, jinak to fungovat nebude.

Netuším, zda by to šlo bez toho postupu se zadáním adresy buňky na tom listu Summary. Ale to by neměl být problém, pokud by to tam "škaredilo", dá se to posunout někam doprava, do netisknutelné/skryté oblasti.

Samozřejmě, že šlo - pamatuj, že v Excelu jde (skoro) všechno! Akorát (zatím) neumí vařit, prát a žehlit. :-)
Pro tazatele - do D3 napiš (a dál zkopíruj):

=NEPŘÍMÝ.ODKAZ(ODKAZ(3;2;4;1;C3);1)

Tohle ovšem do všech buněk "nacpe" hodnoty z buňky B3 z jednotlivých listů. Pokud bys potřeboval hodnoty z více řádků jednoho listu, místo "ODKAZ(3;..." dáš "ODKAZ(ŘÁDEK();..." (případně +/- nějaké číslo).

A ještě odkazy na popis těchto funkcí:
https://office.lasakovi.com/excel/funkce-vyhledavaci/ODKAZ-ADDRESS-adresa-bunky-Excel/
https://office.lasakovi.com/excel/funkce-vyhledavaci/neprimy-odkaz-indirect/

pokiaľ sa odkazuješ na hárky vlastného zošita, apostrofy nepotrebuješ, stačí výkričník.
Tvoj prípad bude:

=INDIRECT(C3 & "!B3")
resp
=NEPŘÍMÝ.ODKAZ(C3 & "!B3")

t.j. vytvorí odkaz z obsahu bunky C3 a reťazca "B3" (plus oddeľovač "!")

Tento vzorec je vyplniteľný nadol ale musíš si uvedomiť, že B3 ostáva konštantné, keďže ide o tvrdý reťazec, nie odkaz na bunku B3.
Vyplnením sa bude meniť len bunka obsahujúca názov hárka.
To je OK, lebo na každom hárku máš požadovaný obsah v bunke B3.
Ale na každom hárku bude len jeden záznam?

Dá sa urobiť i to, že vyplnením nadol bude vzorec napĺňať i ostatné záznamy zo zdrojového hárka, ale museli by sa kombinovať absolútne a relatívne odkazy a vyplnenie by mohlo ísť len po riadok, kde nastáva zmena názvu hárka. Tam by sa musel zas nadefinovať počiatočný vzorec (či už využitím nejakého pravidla vo vzorci alebo manuálne), odkiaľ bude zas možné vypĺňať vzorcom nadol...
Ale to je samostatná téma.
Když tak se zase ozvi, keď bude jasnejšia štruktúra...

Zpět do poradny Odpovědět na původní otázku Nahoru