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

#1 7. 12. 2010 01:13:17

clown5
Člen
Registrace: 7. 12. 2010
Příspěvků: 2

adresovani listu

dobry den,

existuje nejaka podoba indirectu pro pristup k listu pres jeho poradi?

potrebuju ziskat hodnotu bunky F6 z listu, ktery ma poradi 4 (dane parametrem). hledam, hledam, nenechazim.

mozna by to spravila i moznost ziskani jmena listu urceneho poradim.


diky za pomoc
hugo

Offline

#2 7. 12. 2010 15:02:28

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

Re: adresovani listu

Máte několik možností:

1. Napsat vlastní makro/funkcim která vrátí na základě čísla jméno listu.
2. Pojmenovat listy s daty třeba Data1, Data2, ... a použít indirect("Data" & par & ".F6")
3. Namapovat list na parametr např. pomocí vlookup.

Opravdové 3D adresy calc neumí, jen v některých případech odkazy typu :

=SUM(List1.F6:List3.F6)

4. Ještě je možné použít

=INDEX(A1:F10~List2.A1:F10~List3.A1:F10;1;1;2)

tj. ve funkci index spojit oblasti na více listech operátorem ~ (vlnka), poslední parametr udává číslo oblasti, v tomto přípqadě listu.

Určitého zlepšení čitelnosti se dá dosáhnou pomocí definice jména. Nadefinujeme jméno

Data =A1:F10~List2.A1:F10~List3.A1:F10

A potom můžeme funkci psát:

=INDEX(Data;řádek;sloupec;list)

Osobně bych dal přednost variantě 2, případně 4 s definovaným jménem, pokud by to nějak muselo být.

Editoval lp. (7. 12. 2010 20:56:14)

Offline

#3 7. 12. 2010 22:31:27

hanus
Člen
Místo Olomouc
Registrace: 29. 11. 2006
Příspěvků: 573
Web

Re: adresovani listu

Kolik listů máte v sešitu? Jakým způsobem je tam přidáváte? Mění se pořadí listů? Záleží na mnoha okolnostech a podle toho je pak možné navrhnout možné řešení. Tip:
* funkce SHEET vrací pořadové číslo listu uvedeného odkazu; =SHEET() je pořadí listu, kde je fce vložena
* na jednom listu můžou být odkazy na buňky F6 ve všech listech tj. obsah těch buněk F6, a vedle pak odkazy s funkcí =SHEET(ListyXY.F6), která vrátí pořadové číslo listu daného odkazu - při změně pořadí listů se to aktualizuje. Pak si vyberete tu hodnotu F6, jejíž SHEET fce vrací 4
Nevýhodou je, že po přidání nového listu je nutné ho "zaindexovat" výše popsaným způsobem.

Bohužel není standardní funkce, která podle pořadového čísla vrátí název listu a ani nelze na buňky z jiných listů odkazovat pořadovým číslem listu

Editoval hanus (7. 12. 2010 22:33:32)

Offline

#4 11. 12. 2010 12:50:14

clown5
Člen
Registrace: 7. 12. 2010
Příspěvků: 2

Re: adresovani listu

pocet listu se meni - pribyvaji
mohu si pojmenovat jak chci - s tim ted laboruju
cislo listu znam, potrebuji zjistit hodnotu konkretni bunky z listu N

jde mi o rozpocet - kazdy mesic ma svuj list, na prvnim listu je sumar - jak pribyvaji listu, pribyvaji radky v sumari ...

Offline

#5 11. 12. 2010 15:18:33

hanus
Člen
Místo Olomouc
Registrace: 29. 11. 2006
Příspěvků: 573
Web

Re: adresovani listu

Co třeba takto http://ooo.e-hanus.cz/INDIRECT_listy.01.ods pomocí INDIRECT? Pro jednodušší sestavení vzorce je tam pomocný sloupec s názvem měsíců (jednoduše vyrobený vyplňováním řad) a pomocný sloupec s rokem. v INDIRECT je pak spojen měsíc&rok&buňka F6; listy pak pojmenováváte leden2010, únor2010, .... leden2011, únor2011....
Těch způsobů jak to vyřešit je celá řada.

Offline

Zápatí