Makra - funkce

První díl - účel a nahrání makra Druhý díl - vlastní panel nástrojů Třetí díl - vytváření funkcí a podmínka

Soubor s funkcí, která nefunguje

Funkce a makra v jazyce Visual Basic for Aplications

Tento díl shrnující dvě hodiny najednou připomíná používání základních struktur - podmínky, cyklu - a spojuje je s možností zadávání dat a zobrazování výsledků nejen přes funkce. Teď už zbývá to nejtěžší, ale zároveň nejhezčí - řešit problémy: od hledání největšího/nejmenšího ze tří čísel, přes součet/součin/průměr/přirozenou mocninu po Euklidův algoritmus, Eratothenovo síto, celočíselné dělení a zbytek po něm a převody mezi číselnými soustavami.

Podmínka

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 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

Cyklus s pevným opakováním

Občas potřebujeme provádět nějakou činnost vícekrát, s možností volit opakování. K tomu slouží tento typ cyklu. i je řídící proměnná cyklu, pravidelně se zvyšuje, před započetím cyklu se kontroluje, zda už nepřekročila počet opakování, daný proměnnou N. V cyklu se dá s i počítat, popřípadě měnit, ale opatrně.

For i =1 to N
příkazy prováděné v cyklu
Next i

Cyklus s podmínkou na začátku

Někdy je třeba opakování cyklu kontrolovat podmínkou. k tomu slouží tento typ cyklu s podmínkou na začátku, který proběhne jen v případě jejího plnění. Existují i cykly s podmínkou na konci.

While podmínka
příkazy prováděné v cyklu
Wend

Zadávání vstupních údajů

Pro základní účely pomiňme definice typů a jejich kontrolu. Když od uživatele makra potřebujeme číselné údaje, doufáme, že nám jiné než číselné údaje nedá. A dá-li, jeho problém, že makro selže. A je proměnná, do které se vloží uživatelem zadaný údaj.

A = InputBox(" text určený uživateli")

Výstup do okna

A chceme-li uživateli něco sdělit, například výsledek, můžeme použít následující příkaz vyvolávající informační okno. Můžeme spojit text s číselným výsledkem příkazem pro spojování textu:

Napis = "A výsledek je " & Vysledek
MsgBox Napis