Nemám pocit, že by můj apel na uvádění českého znění vzorců padl na příliš úrodnou půdu. Původně jsem prohlásil za zbytečné, aby někdo tvořil převodníky názvů funkcí, když lze využít dostupných schopností okna Immediate ve vývojovém prostředí Excelu. Tohle ovšem jako on line služba neplatí ani pro studium materiálů na internetu, ani pro psaní příspěvků do tohoto fóra. Dal jsem si proto tu práci a pokusil jsem se vytvořit dostatečně pohotový nástroj, který lze mít po dobu studia i psaní trvale dostupný a kdykoliv použitelný.
Vzniklo nemodální dialogové okno, které lze umístit do běžící aplikace (rozečteného textu na internetu, rozepsaného příspěvku na fóru), a to tak, že lze pracovat souběžně jak s tím textem, tak s oknem. Okno umí převést každý správně napsaný vzorec z jedné formy na zbývající formy (Formula, FormulaLocal, FormulaR1C1 a FormulaR1C1Local) s tím, že získanou formu mohu rovnou využít pro zpracování textu. Výhodou mého řešení je, že "nestárne". Pro převody používá aktuálně platnou verzi Excelu, v níž je aplikace spuštěná.
Přikládám screenshot, na kterém jsem při psaní tohoto mailu vyvolal okno TransFormula a napsal jsem do něj přihlouplý vzorec, který jsem přeložil. Pokud se někdo ozve, že by to snad chtěl používat, pošlu i ten převodník.
Lubku, mám rád jednoduché a účinné nápady. Tenhle s "živým duplikátem" k nim nesporně patří. Je to prosté a zcela univerzální!
Funkce se jmenuje SUMIF. Je to užitečná funkce, tak se na ni podívejte!
marjankaj napsal/a:
No netuším, prečo to takto preložili.
http://office.lasakovi.com/excel/funkce/ms-excel-funkce-en-cz/
Pánové, abych se příště nemusel touto osobní záležitostí zabývat, tak tady zveřejním část svého CV. Svůj první větší program jsem napsal v jazyce MAT-5 v roce 1967 pro počítač MINSK-22. Od té doby jsem programoval cca v 15 různých programovacích jazycích s cca 10 dalšími mutacemi některých z nich. V době, kdy se narodil Personal Computer od IBM, už jsem velel celým programátorským týmům. Na PC jsem DOS zvládl do šroubku a na Windows jsem přešel až těsně před revolucí 1989. VBA pro MS Excel jsem objevil na přelomu tohoto tisíciletí, tedy cca před 15 lety. Teprve po odchodu do důchodu před dvanácti roky se stalo pécéčko mým hlavním počítačovým prostředím. Z tabulkových procesorů jsem před objevením Excelu miloval zejména Borland Quattro-Pro s jeho grafickým prostředím v rámci DOSu.
Snad tento výčet do budoucna odlehčí některé polemiky se mnou.
to elCHa: právě bordel kolem nejrůznějších funkcí pro zaokrouhlování mne vede k tomu, abych "svoje" zaokrouhlování vždycky stáhl do normalizované podoby, v níž zaokrouhluji na celá čísla. Tam nemusím přemýšlet nad tím, jak vynálezce funkce svou funkci definoval.
Když chci zaokrouhlit na čtvrthodny, tak čas ve dnech ponásobím 96, abych ho dostal do jednotek čtvrthodina a výsledek zaokrouhlím na celé číslo, Abych se vrátil do času, zaokrouhlený výsledek zase 96 podělím. To nedělám z neznalosti, ale kvůli čitelnosti významu vzorce.
V této podobě nepotřebují žádnou funkci pro zaokrouhlování nahoru a dolů. Stačí znormovanou hodnotu zvětšit nebo zmenšit o 0,5 a použít standardní zaokrouhlení. Tak to dělám už 40 let a nezačnu to dělat jinak.
Děkuji, to je pro mne dostatečné zdůvodnění pro vznik té hlášky bez úmyslu vložit do sešitu nějakou nepěknou past. Budu věřit tomu, že není důvod k obavám...
Otázku jste formuloval srozumitelně, jen já jsem nesrozumitelně odpověděl. Vaše přání "Lib knihovna" je přesně to, co odpovídá mému "volání jména funkce ani Alias nemůže pocházet z proměnné ani z konstanty". Jinými slovy: podle mých testů "tudy cesta nevede" .
Stáhl jsem si zde na fóru sešit od sosky. Vložil jsem do něj svůj přídavek a požádal jsem o save. Před uložením jsem obdržel upozornění, se kterým jsem se dosud nesetkal. Ví někdo, co ho vyvolává?
S vědomím elninoslov zasílám do diskuse vlastní způsob řešení, když mne zaujala dost dlouhá výměna příspěvků bez konečného řešení. Žádný zázrak, ale podle mne to funguje
Personalisty nemám rád. Jednak u mne mají pořád nálepku kádrováků, jednak zpravidla nevědí, co chtějí, ale tvrdě na tom trvají. Pravidla často nastavují lidé, kteří vůbec netuší, jaká zvěrstva z jejich špatných formulací plynou.
Zaokrouhlování vždycky patřilo mezi nevděčné problémy a pokud se dělá blbě, poskytuje blbé výsledky. Odečítání zaokrouhlených čísel je ze zásady blbost, což jsem se pokusil eufemisticky opsat obratem "je filozoficky nesprávné". Pokud to někdo po vývojáři chce, měl by se tomu vývojář bránit. Minimálně by měl upozornit na důsledky takového postupu. Mnohokrát se mi stalo, že po vysvětlení důsledků stupidně formulované podmínky si dal zadavatel říct a svoje zadání změnil. Když si ale říct nedal, pak dostal, co chtěl. Ovšem na své vlastní zodpovídání...
Pro svůj archiv jako výborný příklad pro práci s hodnotovými poli jsem úlohu doplnil příkladem pro zpracování matice 100x100 hodnot, naplněné náhodnými čísly 1 až 20. Příklad jsem doplnil o časové vyhodnocení doby naplnění matice i doby zjištění četností. Čísla, která to vyhodnocení ukazuje, nejsou řádový překlep, ale skutečné časy v sekundách . Upravenou úlohu přikládám.
Nemohu popřít, že se kontingenční tabulka pro daný účel přímo nabízí. Přesto vám nabídnu algoritmus, který KT předčí v rychlosti, což byste ovšem poznal až na větší oblasti dat. Procedura má dva parametry: "co" a "kam"
to Lubo: budeme se přetahovat, na které straně testu je hranice intervalu? Stejně tak bych se mohl ptát, jak se vyhodnotí v jiných vzorcích M27 = -50?
Citlivost na hranici u vzorce v dotazu je 0,01. Mám se ptát, jak podle něj dopadne M27 = 12,005 ?
Vždycky jsem pokládal za sporné, že lokalizace Excelu znamená také lokalizaci názvů pro funkce listu. Kdo spolupracuje s jinojazyčnými Excely, má problém. Kdo používá VBA, má problém. Vše "vylepšuje" používání rozdílných oddělovačů v různých jazykových skupinách.
Bohužel to tak je a nikdo s tím asi nic nenadělá. Uvedená situace se promítá mj. do příspěvků na tomto fóru. V Čechách je jaksi normální pracovat s českým Excelem, který užívá české názvy funkcí s českou interpunkcí. Vedle toho určitá skupina vývojářů pracuje s jinými (naštěstí téměř výhradně s anglickými) verzemi Excelu. Takže se v příspěvcích potkáme s radou "použij =PROPER(A1)" a s reakcí "to já jsem našel jinou funkci =VELKÁ2(A1)". Jak má začátečník vědět, že jde o totožnou funkci? Toto fórum přijalo bohulibý úkol pomáhat méně zkušeným. Je rozumné právě od nich chtít, aby tušili, že SUMPRODUCT je SOUČIN.SKALÁRNÍ a INDIRECT je NEPŘÍMÝ.ODKAZ? A že čárka je středník a lomítko je tečka?
V zájmu skupiny tazatelů na tomto fóru se obracím na uživatele anglické verze Excelu: uvádějte prosím znění vzorců na tomto fóru pokud možno v české notaci (slovenský Excel ji, pokud vím, také používá). Kdyby vám to činilo potíže, uveďte prosím alespoň upozornění, že vzorec je zapsaný v anglické notaci. Pomůže to snížit zmatek kolem validity odpovědí. Jak se anglický vzorec přepíše do češtiny, si pak i začátečník dokáže zjistit, když si přečte diskusi, která na tomto fóru nedávno k danému tématu proběhla .
Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.