dnes je 10.12.2024

Input:

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

16.3.2012, , Zdroj: Verlag Dashöfer

Zahájíme sérii článků, které se budou zabývat 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. Zpočátku nebudeme „objevovat Ameriku“, ale zkusíme především zpřístupnit šikovné nástroje uvnitř VBA pro práci v buňkách.

Podkladová úloha: Pracujeme s novým sešitem, v němž bude formulář, jejž je třeba vyplnit. Stáhněte si sešit 2012-06 UD-funkce.xlsm z odkazu na konci článku. Sešit otevřete. Uvidíte zhruba toto:

Úloha je žertovná, avšak poslouží nám jako hřiště k vyzkoušení několika dovedností v Excelu, zejména využití uživatelských funkcí.

Připusťme, že 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.

Všimněte si například, že uchazeč napsal své jméno normálně a ne pozpátku, nicméně vyplnil neurózu i konflikt s policií.

Formulář záměrně není zatím celý, ale budeme do něj časem vyplňovat další povinné řádky.

U první položky – diagnózy – budeme kontrolovat počet slov. Pokud nebude diagnóza dostatečně košatá, budeme předpokládat, že uchazeč není pro klub vhodný. Chceme tedy získat počet slov diagnózy. Ten pak můžeme testovat v Excelu.

Mezi textovými funkcemi Excelu není žádná, která by nám počet slov poskytla, a pokud bychom chtěli využít např. funkci Hledat k nalezení mezery, byl by výsledek neúplný a neuvěřitelně nepřehledný.

Zato ve VBA je k dispozici funkce Split:

Ve VBE vyvoláme okno Object

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