Makra - funkce

První díl - účel a nahrání makra Druhý díl - vlastní panel nástrojů

Soubor s vlastními funkcemi na povrch a objem základních těles

Nastal čas se ponořit do jazyka maker Visual Basic a "základů programování". K tomu nám dnes poslouží jednoduché (a pouze k procvičení vhodné) funkce. Funkce v Excelu se používají v buňkách, předchází jim =, za názvem funkce je v závorkách argument (s čím bude funkce pracovat, může být i prázdný).

Do editoru jazyka Visual Basic se dostaneme přes Nástroje - Makro - Editor jazyka Visual Basic nebo klávesovou zkratkou Alt + F11. Obvykle při prvním přechodu do editoru je prázdný, musíme si prostor pro funkce zpřístupnit. Tímto prostorem je část dokumentu zvaná Modul a vloží se pomocí Insert - Module. Pak můžeme začít psát funkce.

zde měl být obrázek

Funkce je uvozena klíčovými slovy Function a End Function. Za Function následuje název funkce a v závorkách argumenty (proměnné), odděleny čárkou. Není-li definováno jinak, je proměnná univerzálního typu Variant, což znamená, že do ní můžeme vložit cokoliv, ale také zabírá více místa v paměti než proměnná nějakého určeného typu, např. celá čísla, reálná čísla, znak, ...

Ve funkci můžeme s proměnnými a čísly pracovat. Má-li mít funkce výstup (a bez toho by byla úplně k ničemu), musí být mezi řádky s příkazy i řádek, kde se názvu funkce přiřadí výstupní hodnota.

První programovací struktura - podmínka

Pouhý sled přiřazovacích příkazů (lineární program) stačí na celou řadu problémů, ale časem budeme potřebovat složitější struktury, obsahující větvení (podle podmínky se bude řešit buď jedna nebo druhá varianta) a cykly.

Podmínka se kládá ze tří částí - samotné podmínky, příkazů v případě jejího splnění a příkazů v případě jejího nesplnění (tato část už ale být nemusí).

Jednopříkazová podmínka se dá zapsat:
If podmínka Then příkaz

Vícepříkazová podmínka:
If podmínka Then
příkaz 1
příkaz 2
...
End If

Podmínka s oběma větvemi (příkazy v případě splnění i nesplnění podmínky):
If Podmínka Then
příkazy v případě splnění
Else
příkazy v případě nesplnění
End If

Podmínka s oběma větvemi a vnořením další podmínky:
If Podmínka 1 Then
příkazy v případě splnění
Else
If Podmínka 2 Then
příkazy v případě splnění
Else
příkazy v případě nesplnění
End If

End If