< návrat zpět

MS Excel


Téma: Pomoc vysvetlit funkciu. rss

Zaslal/a 6.6.2013 11:26

Ahojte,
chcel by som Vas poprosit, ci by mi niekto z Vas mohol detailne vysvetlit jednu funkciu, ktora sa pouziva pri nastaveni dynamickeho rozsahu pri overovani dat. Nastavit si to viem podla toho navodu na webe, ktory pripajam ale nerozumiem tejto funkcii.

Funkcia:
(odstavec: Create the ValData Dynamic Range)
=Lists!$A$2:INDEX(Lists!$1:$100,100,COUNTA(Lists!$1:$1))

Dakujem.

http://www.contextures.com/xlDataVal15.html

Zaslat odpověď >

icon #013734
eLCHa
Oblast začíná na buňce A2 a končí na 100. řádku listu Lists a na sloupci X, kde X je dáno počtem neprázdných buněk v 1. řádku listu (s tím, že v prvním řádku nesmí být vynechána žádna buňka, jink to nebude fungovat správně).

Aby to k něčemu bylo musíte to dát např do fce SUMA, PRŮMĚR atp.

Je to totéž, jako
=POSUN($A$2;0;0;99;POČET2($1:$1))citovat
#013767
avatar
Dakujem za odpoved, ale nie je mi to este aj tak celkom jasne. Chapem, ze oblast zacina od bunky A2, ale potom ta funkcia INDEX mi nie je vobec jasna.

Argumenty funkcie su:
INDEX(array,row_num,column_num)

array - ten je fixne nastaveny na prvu az stu bunku. To mi este dava vyznam. Lists!$1:$100

row_num - odkazuje sa na posledny riadok rozsahu. Hodnota 100. Preco tu je hodnota 100?

column_num - tu by mal byt odkaz na stlpec kde sa nachadzaju hodnoty. Preco je tam pouzita funkcia COUNTA, ktora ma vracat pocet neprazdnych riadkov z rozsahu 1:1? Vysledok bude vzdy 1.
Nemoze tam byt jednoducho napisana len "1", ked sa to nachadza v prvom stlpci?
INDEX(Lists!$1:$100,100,1)

Vdaka.

COUNTA(Lists!$1:$1) - tato funkcia by mala vracat pocet neprazdnych riadkov.Nechapem tym jednotkam. Vzdy to bude predsa vracat to iste cislo. Nemalo by tam byt radsej nieco taketo: =COUNTA($A$1:$A$100)?citovat
icon #013768
eLCHa
Jedná se o dynamickou oblast, ve které se mění její šířka (počet sloupců)

array - ten je fixne nastaveny na prvu az stu bunku. To mi este dava vyznam. Lists!$1:$100
Ne buňku, ale řádek - tedy v excelu 2007 A1:XFD100


row_num - odkazuje sa na posledny riadok rozsahu. Hodnota 100. Preco tu je hodnota 100?

Protože autor vzorce chce, aby dynamická oblast končila na řádku 100 (a protože začíná na druhém, má tedy výšku 99 - proto je v mé funkci POSUN těch 99)

COUNTA(Lists!$1:$1)
vrátí, jaxte napsal počet neprázných buněk v 1. řádku (A1:XFD1)
tedy když v A1 bude něco a v B1 bude něco, vrátí už 2, když v C1, vrátí 3 atd.
To je ta dynamická část oblasti. Mění se šířka podle potřeby

Přečtěte nápovědu k funkci POSUN (OFFSET) a používejte jí místo tohoto.citovat
#013770
avatar
row_num - odkazuje sa na posledny riadok rozsahu. Hodnota 100. Preco tu je hodnota 100?

Prečo? lebo autor si to tak zvolil. Predpokladal, že nebude vyplnených viac riadkov ako 100.
Ak by ich bolo viac, tak si tam môžeš dať aj hodnotu 1000000. Samozrejme aj ostatné príslušne upraviť.

eLCHa má pravdu, funkcia OFFSET je jednoduchšia.citovat
#013772
avatar
Výsledkom
=Lists!$A$2:INDEX(Lists!$1:$100,100,COUNTA(Lists!$1:$1))
je ak sú vyplnené v prvom riadku napríklad 4 bunky A:D je oblasť Lists!A2:D100.
Funkcia INDEX má dva tvary POLE a ODKAZ.
V tomto prípade je výsledkom odkaz.

Pozri si nápovedu k funkcii INDEX-odkaz z EXCELU 2003
v prílohe
Příloha: zip13772_index.zip (7kB, staženo 22x)
citovat
icon #013777
avatar
@marjankaj: eLCHa má pravdu, funkcia OFFSET je jednoduchšia.

len poznamenám, že jednoduchšia na pochopenie je, a je tradične používaná napr. pre dynamické vymedzenie datových sád grafu, ale na rozdiel od Index je volatilná...citovat

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje