dnes je 1.5.2024

Input:

Excel 2007: Makra – VBA - Uživatelská funkce – 4. část

27.4.2012, , Zdroj: Verlag Dashöfer

V předchozích dílech jsme pokračovali v projektu, kde postupně zlepšujeme práci s uživatelskými funkcemi. Je to příslib, že když vám v Excelu nějaká funkce chybí, budete si umět poradit skoro se vším. Minule jsme v základním provedení poznali VBA funkci StrReverse, která v Excelu přímo není.

Podkladová úloha: Pracujeme se sešitem, v němž je formulář, jejž je třeba vyplňovat. Dnes je trochu doplněn o další položky. Stáhněte si sešit 2012-09 UD-funkce.xlsm z odkazu na konci článku. Sešit otevřete. Uvidíte zhruba toto:

Tato žertovná úloha nám nadále bude sloužit jako hřiště k vyzkoušení několika dovedností v Excelu, zejména využití uživatelských funkcí. Stanovy klubu požadují, aby uchazeč splňoval určitá kritéria, např. že se léčí přinejmenším u psychologa, že je schopen zapojit do procesu vyplňování nadprůměrnou inteligenci a že je konfliktní typ. Než bude přihláška postoupena  přijímací komisi, je třeba vyloučit ty přihlášky, které zjevně nesplňují stanovy klubu, a nebude zatěžovat i tak dost vytíženého předsedu.

Dnes posoudíme s využitím uživatelské funkce, zda konflikt s policií nastal v pátek. Pokud ne, zda to nastalo ve stejný den v týdnu, jako den Kafkova narození (3.7.1883) nebo jeho smrti (11.6.1924). Pokud ani jedno nebude pravda, funkce vydá pochybnost o způsobilosti uchazeče k členství.

Poznámka: Tento problém by byl řešitelný i na úrovni Excelu pomocí funkcí KDYŽ,DENTÝDNE a operací s datumčasovou hodnotou. Zapouzdření do uživatelské funkce však umožňuje vlastní algoritmus utajit zaheslováním projektu, a při tom umožnit uživatelům se vzorci pracovat. Je na druhou stranu pomalejší.

Využijeme

Nahrávám...
Nahrávám...