< návrat zpět

MS Excel


Téma: sloučení vzorců rss

Zaslal/a 6.1.2014 18:16

Dobrý večír, potřebuju součet buněk H8 až H? (Sloupec H je yplněn H8:H500) Podle počtu vyplněných buněk A:A
Chci tedy použít sloučení vzrorců =SUMA(H8):POČET(A7:A500), nedaří se mě

Zaslat odpověď >

Strana:  « předchozí  1 2 3   další »
icon #017098
eLCHa
@lubo
ad IFERROR - má význam, pokud je počet = 0, nebude fungovat ani POSUN, ani INDEX ;). Ale máte pravdu v tom, že je moc obecná a bylo by lepší, pokud chci odchytit určitou chybu, zaměřit se na ni. Takže správně by bylo =KDYŽ(POČET2(A7:A500)=0;0;SUMA(POSUN(H8;0;0;POČET2(A7:A500);1))). Chyby v datech se neočekávají, protože fortes napsal podle počtu vyplněných buněk. Ani jeden ze vzorců neřeší nesouvislost vyplněných dat, takže pak mohou všechny 3 vzorce dávat špatné výsledky a autor, pokud to tak nechtěl, to nepozná. To je podle mně větší problém.
Funkce AGGREGATE je možná fajn, ale podle http://office.microsoft.com/cs-cz/excel-help/aggregate-funkce-HA010338704.aspx je až od 2010. Takže ji ve 2007 nemám, nemám ji odzkoušenou a proto jsem ji ani nemohl použít.

lubo napsal/a:

POSUN - problémová funkce, bylo zmíněno, že je volatilní, navíc při úpravách sešitu snadno vznikají chyby. Obvykle to jsou spočtené koordináty, které vracejí hodnoty mimo předpokládanou oblast dat. Určité varování přijde, až když odkážou mimo prostor listu. INDEX je bezpečnější.

Tohle v tuto chvíli považuji za nesmysl. Ukažte konkrétní příklad. Naopak, jelikož AL použil konstantu 7, je pravděpodobnost chybného odkazu větší u něj než u mne.

lubo napsal/a:

Asi jsi dosud nepotkal větší sešit. Při špatně napsaných vzorcích získáš občas i několik hodin volného času. Občas i v malém souboru.

Nechtěl bych být sarkastický, nechtěl jsem komentovat, ale přece jen. UPS!!! Zaregistrujte se a napište pár příspěvků, ať mám tušení s kým vlastně diskutuji.
Jen dodám - potkal a hlavně vytvořil, denně v něm pracuji a to už od verze 97 a tenkrát jsem rychlost opravdu musel řešit takže mám úchylku řešit ji stále. Ale nenechám se tím omezovat.
Pokud někdo musí v jednom souboru šetřit hodiny!!, tak má ten soubor opravdu špatně vytvořený.

Ostatním se omlouvám za trochu sarkasmu ;)citovat
#017100
avatar
Nedá mi to nezareagovat. Při brouzdání na netu jsem se často setkal s názorem "Vyhněte se volatilní funkci všude tam, kde je to možné.".

Já s tímto názorem nesouhlasím. Chápu excel primárně jako kalkulátor i když např. velikost mřížky a další "svádí" i k jinému použití. Ruku v ruce s touto problematikou jde i téma "V jakých případech již opustit kalkulátor a přejít třeba na dtb". Kde máte hranici Vy? Obecně je udáváno kolem 20000 řádku s několika málo sloupci. Tam by neměl být problém využít i volatilní funkce. Chci říci, že bych se také bezhlavě nezbavoval funkcí jako je POSUN. A myslím si také, že pokud se vyhnutím použití volatilních funkcí ušetří hodiny je řešení špatné. Toď můj subjektivní názorcitovat
#017103
avatar
@eLCHa
Všechno závisí na požadavku tvůrce. A je fakt, že nejen začátečníci obvykle nevědí, že by měli řešit i případné nesrovnalosti v datech.

Použití IFERROR jako univerzálního zametače chyb neporučuji. Chyby je praktičtejší chytat selektivně. I když je to trochu pracnější, obvykle se to vyplatí.
Nemohu samozřejmě za fortese rozhodovat, jestli jsou nevyplněné hodnoty chybou nebo vlastností. Pokud je to chyba, vzorec by neměl vrátit 0, ale varovat.

Podobně je to se souvislými daty. Takže přeformulované zadání zadání zní: sečti v oblasti H8:H500 od H8 dále tolik buněk, kolik je vyplněných buněk kdekoliv v oblasti A7:A500. Pokud je vyplněná pouze buňka A500, vzorec vrátí hodnotu H8. To uvedené vzorce dělají. Mohou nastat minimálně 3 případy:
1. chyby v oblasti H8:H500 (oblast může být vyplněna vzorcem) - je vrácena chyba = varování.
2. Oblast A7:A500 je větší než cílová. Pokud bude vyplněna celá, funkce POSUN si toho nevšimne a ani nemůže, proto ji také nemám rád. INDEX (při správném použití) vrátí chybu.
Oba vzorce tak jak jsou napsané v tomto případě sečtou o buňku více.
3. Vyplněná buňka může obsahovat mezeru, ', nebo dokonce nic. Fukce POČET2 je všechny spočítá. Snad to fortes ví.

Zastávám zásadu: Nepoužívej vzorce, pokud nerozumíš tomu co dělají. Tj. autor vzorce nezná všechny souvislosti, v jednoduchém případě opsaný vzorec může fungovat, při použití s reálnými daty mohou nastat problémy.

Co se týká volatility a bagatelizace problémů, které způsobuje - malé soubory, pokud jsou používány, často rostou, fungující řešení z malých souborů se přepisuje a potom někdo s překvapením zjišťuje, že něco, co před rokem fungovalo dobře, zadrhává nebo s většími daty funguje mizerně, někteří pokročilejší pak přepínají na manuální přepočet, pošlou sešit s mauálním přepočtem a pak se příjemce diví, proč mu excel nepočítá, kde se vzaly nesmyly ve výsledcích...

Lépe je si zvyknout na bezpečnější způsoby zápisu + vědět a rozumět, proč byl zvolen příslušný postup (pro fortese - v excelu skoro vždy máme několik možností, jak napsat určitý vzorec).

ps. cca před 10 lety jsem měl období, kdy se mi funkce POSUN líbila. Dnes se mi už tolik nelíbí a vím proč.citovat
#017104
avatar
Od někoho, kdo pracuje s excelem minimálně 10 let bych takovou argumentaci nečekal.

Rozumím ještě tomu, že když očekávám větší množství dat, přizpůsobím tomu řešení, ale do určité míry.

Dostanu-li se do situace, kdy pro velké množství dat nemůžu použít významné volatilní funkce, zvážím použití kalkulátoru. Volatilita není chyba a volatilní funkce jsou součástí kalkulátoru

"...malé soubory, pokud jsou používány, často rostou". Sešity mohou růst tak, že nebudete moci používat jiné nástroje excelu a mnohem významnější. Podle Vaší logiky byste je preventivně vynechal?

Dostanu-li se do situace, kdy pro velké množství dat nemůžu použít funkce, včetně některých významných volatilních fce nebo ostatní nástroje excelu, zvážím použití kalkulátoru - zjednodušeně pro Vás - protože je to kalkulátor!

K ostatním nepodloženým argumentům se odmítám vyjadřovat.citovat
icon #017106
eLCHa
@lubo
daal to už napsal za mne ;)

já jen dodám, že kdyby někdo rozuměl těm vzorcům, nebude se tady ptát, jak to má udělat.
My, pokud jsme schopni, jsme ochotní jim pomoci, ale nejsme schopni odhadnout všechny okolnosti. Pokud si projedete všechna nejen mnou navrhovaná řešení na tomto fóru, na každém možná najdete něco, kdy to nebude fungovat správně.citovat
icon #017111
avatar
Pmn všetky vyložené argumenty, jak zo strany luba, tak i daala a eLCHy, sú valídne. Existujú prípady, kedy volatilné funkcie žiadne výrazné "zlo" pôsobiť nebudú. Pokiaľ ale lubo píše o prípadoch, kedy súbory časom narastajú, tak viem presne, o čom hovorí. Prechod k databáze v takom prípade, ako zmieňuje daal, je fajn, má to ale jedno "ale". Pokiaľ užívateľ (autor nejakého súboru) nie je schopný ukočírovať neblahé zmeny v excelovskom súbore, osobne by som u takého užívateľa nepredpokladal jeho schopnosť preklopiť dáta z excelu do DBMS. Nemyslím si, že lubo, daal, alebo eLCHa by čelil týmto problémom vo svojich vlastných súboroch, ale máme tu ďalších užívateľov a ich vlastné súbory. Nechceli by ste vidieť, s akými výstupmi v exceli (autorom ktorých je niekto iný), som nútený pracovať, takže viem presne, na čo lubo naráža...citovat
#017112
avatar
Ozval jsem se, protože konstrukci

IFERROR(POSUN...

považuji za prasečinu v každém případě. A volatilita je to poslední co mi na tom vadí. Pokud důvody nechápete, je mi to jedno. Necítím potřebu kohokoliv přesvědčovat. Za sešit vždy odpovídá autor a je jeho právem použít co uzná za vhodné.

@daal - Ano, při práci zvažuji mj. i současný i očekávaný rozsah dat a podle toho volím použité nástroje a postupy, včetně použití excelu.citovat
#017113
avatar
@Al
Vážím si Vás už od doby kdy jsme se potkali na excelplus.net, ale tohle 8 .

"Prechod k databáze v takom prípade, ako zmieňuje daal, je fajn, má to ale jedno "ale"". Tady nejde o doporučený přechod na dtb. Jde o to se bezhlavě nezbavovat funkcí jako je POSUN. Volatilita=fuj? To jste prostě přestřelil a vyvolalo to reakce. Lubo Vaše fuj podložil jediným životaschopným argumentem a to je množství dat. To pro mě není argument. Je samozřejmé, že se použijí nástroje excelu pro danou situaci, ale nezobecňujme to slovy "Nepoužívejte volatilné funkce excelu - fuj!"citovat
icon #017114
eLCHa
@lubo
je v pořádku, že jste se ozval, s IFERROR jsem vám dal za pravdu a opravil jsem.
A budu rád, budete-li se ozývat i nadále, diskuzi se nevyhýbám.

@AL
dovolím si ještě rýpnout ;)
Existují případy, kdy volatilní fce způsobují zlo ;)))citovat
icon #017115
eLCHa
Má to vůbec nějaký smysluplný český překlad?
;)citovat

Strana:  « předchozí  1 2 3   další »

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