Výuka a školení Excelu Výuka a školení Excelu Výuka a školení Excelu
Výuka a školení Excelu Výuka a školení Excelu

úterý 26. února 2013

Nestačí vám funkce? Napište si své!

Běžný Excel 2010 má přes 400 funkcí. Přesto se můžeme dostat do situace, kdy by se nám hodila funkce, která v Excelu není. Nebo nás nebaví opakovaně zapisovat dlouhý vzorec obsahující více funkcí a chceme si vytvořit funkci, která tuto kombinaci funkcí nahradí.

Příklad

V mém případě chci vytvořit funkci, která spočte obsah obdélníka na základě dvou vstupních buněk. Netvrdím, že je to zrovna vrchol praktičnosti, ale myslím že se na tom dá vytvoření jednoduché funkce dobře ukázat.

Návod

Jdu do editoru maker (karta Vývojář / tlačítko Visual Basic), vytvořím nový modul a zapíšu funkci.
V mém případě vypadá takto:


Function Obsah_obdelnika(Delka, Sirka)
        Obsah_obdelnika = Delka * Sirka
End Function




Vysvětleno:
  • Function Obsah_obdelnika(Delka, Sirka)
    Function říká že je to funkce, Obsah_obdelnika je název funkce, Delka a Sirka jsou názvy vstupních hodnot
  • Obsah_obdelnika = Delka * Sirka
    Obsah je roven délce krát šířce
  • End Function
    Konec zápisu funkce
Editoru funkcí mohu zavřít. Od teď už se s mojí funkcí pracuje jako s jakoukoliv jinou. Jen si musím uvědomit, že tato funkce existuje v zásadě jen v souboru, kde jsem ji vytvořil.





10 komentářů:

  1. Mě by spíš zajímala taková blbost, řešení už mám, ale jestli uvažujete stejně. Jak uděláte ve formátu buňky metry čtvereční či krychlové ????

    OdpovědětVymazat
  2. Umím to udělat tak, že ta dvojka nebo trojka je jako normální číslo - ne horní index. Pak stačí vybrat do buňky vlastní formát a napsat:
    #" m2"

    OdpovědětVymazat
  3. dělám to jinak, popis od tebe nějak nechápu, zkus mi to poslat, kouknu a napíšu můj postup. lektorpracak@gmail.cz

    OdpovědětVymazat
  4. Prostě pravé tlačítko na buňku
    Formát buněk
    Vlastní
    Vytvořím si vlastní formát
    #" m2"
    Použiju na výběr

    OdpovědětVymazat
  5. dám vlastní formát, to děláme stejně, ale horněindexovou dvojku či trojku tam nakopíruju z mapy znaků (charmap) :-) to tvoje nevím jestli funguje, ale určitě ne, proto jsem chtěl ukázku

    OdpovědětVymazat
  6. Asi občas taky nemáš se koho zeptat na problém, který řešíš. Taky občas prohledávám diskuse a nevím co ještě, a přitom řešení bývá jednoduché. :-(
    Kdysi se mě ptal jeden kolega na to, proč se mu neukazují naposledy otevřené soubory. Když si ten počet chtěl v nastavení změnit, políčko bylo šedé, takže mu to nešlo. Nakonec to bylo zakázáno v registrech excelu 2003. Hrůza, nevím, kdo nebo co mu to přenastavilo.

    OdpovědětVymazat
  7. Jj, jediná cesta jak takovéhle vychytávky najít ve většinou na nějakých světových fórech - co tam nenajdeš, to většinou nejde :)

    OdpovědětVymazat
  8. mimochodem jsem zkoušel tu tvoji novou funkci a nefunguje. Všimni si, že při zobrazení té napovědy na druhé fotce není výsledek. prostě nefunguje, něco tomu chybí.

    OdpovědětVymazat
  9. Hm, divný, když jsem to psal, tak to fungovalo.
    A teď to funguje jen když změním název té funkce. Upravil jsem v textu, ale proč to funguje s Obsah_obdelnika a ne s Obsah to je pro mě dost obestřeno tajemstvím...

    OdpovědětVymazat
  10. Při psaní ve vlastním formátu m2, m3 stačí přidržet klávesu Alt Gr. Nebo zadat jako Alt 0178 což zmiňují zahraniční weby (nutno přepnout na EN klávesnici ;).

    Něco o vlastních formátech jsem sepsal http://office.lasakovi.com/excel/formatovani/vlastni-format-bunek-pokrocile-nastaveni/

    OdpovědětVymazat