Excel - tabulka s mezerou

Od: Datum: 28.03.13 21:43 odpovědí: 1 změna: 28.03.13 22:27

Dobrý den,

potřeboval bych poradit s tímto oříškem (alespoň pro mně). Mám tabulku s hodnotama A:K. Ve sloupečku M je identifikátor obchodů v daný den. Když je ve sloupečku 0 znamená to, že se jedná o poslední obchod daný den. Potřeboval bych podle toho vyfiltrovat vsechny obchody v dany den do druhe tabulky, s tim že za posledni obchod (identifikator 0) se vlozi 10 radku mezera jako na screenshotu. Zkousel jsem neco jako funkci =když(M=1;A1;A(P2="" ... ) ale to nejde. Dekuji srdecne za radu.



Seznam odpovědí:
 
moment čekejte prosím, probíhá přenos dat...
Zobrazení struktury odpovědí v otázce
Skrytí struktury odpovědí v otázce
Zobrazení struktury odpovědí v otázce

 

Odpovědi na otázku:
Datum: 28.03.13 22:27
avatar

První myšlenka: obrátit logiku jedniček a nul v tom sloupečku, jednička značí vložení deseti volných řádků, je to vlastně počítadlo dnů, po dvou dnech to bude posunuté o dvacet, po třech o třicet.. Tohle vecpat do funkce nepřímý odkaz.

Kdyby to mělo 10 řádků přeskočit (odebrat z levé tabulky), je to jednoduché, když ale potřebujete deset řádků přidat (vložit prázdných), je to opačná závislost a bude to mírně těžší.

doplněno 28.03.13 22:51:

Tak nevím, je to funkce nepřímý odkaz, nebo pouze odkaz? To je fuk, prostě ta, které dáte (B12) jako parametr a ona z buňky B12 vytáhne hodnotu.

Každopádně, ta závislost tedy je odkaz(řádek + suma(M1:Mřádek) * 10), úplně zapsané tedy asi odkaz("A" & (řádek() + suma(M1:odkaz("M" & řádek() ) ) * 10) )

Opačná závislost, kterou potřebujete, se nejlíp asi vytvoří tak, že do sloupečku vedle nul a jedniček (tedy do sloupce N) umístíte vzorec, který na řádku, kde jsou jedničky, bude počítat, kolikátá jednička to je - u první 1, u druhé jedničky 2, u třetí 3.. suma(M$1:M1) a natáhnout, až do suma(M$1:M100). No a pro samotnou pravou tabulku pak použít, pokud se nepletu, tohle:

odkaz(floor(řádek / 10) * počet jedniček + řádek % 10), v kompletní podobě (pro M1) tedy: odkaz("A" & zakr.dolů(řádek() / 10) * N1 + mod(řádek(), 10) )

Tak by to snad mělo fungovat.

doplněno 28.03.13 23:36:

Jsem se sám sebe úplně zmátl! Než jsem to dopsal, tak jsem zapomněl, že tam musí být vyhledání té hodnoty, která ještě nepřesahuje číslo řádku.. a že to musí být násobené deseti..

Tady to je správně: http://shovels.wz.cz/mezery.xls

E je vaše M (odlišený poslední v daném dni), GH je nějaký pomocný bordel, JKL je výstup.

Ohodnoceno: 0x
 

 

 

Přihlásit se k odběru odpovědí z této otázky:

Neneseme odpovědnost za správnost informací a za škodu vzniklou jejich využitím. Jednotlivé odpovědi vyjadřují názory jejich autorů a nemusí se shodovat s názorem provozovatele poradny Poradte.cz

 
Copyright © 2004-2016 Poradna Poradte.cz. Všechna práva na poradně Poradte.cz vyhrazena.