/ / Excel VBA funkcia a Sub

Funkcia Excel VBA a Sub

funkcie | náhradník

Rozdiel medzi a funkcie a a náhradník v Excel VBA je, že funkcia môže vrátiť hodnotu, zatiaľ čo sub nemôže. Funkcie a podmnožiny sa stávajú veľmi užitočnými pri zvyšovaní veľkosti programu.

funkcie

Ak chcete, aby aplikácia Excel VBA vykonávala úlohuvráti výsledok, môžete použiť funkciu. Umiestnite funkciu do modulu (V editore jazyka kliknite na položku Vložiť, modul). Napríklad funkcia s názvom Plocha.

Function Area(x As Double, y As Double) As Double

Area = x * y

End Function

vysvetlenie: Táto funkcia má dva argumenty (typu Double) a návratový typ (časť za As rovnako ako typ Double). Môžete použiť názov funkcie (oblasť) vo svojom kóde, aby ste uviedli, ktorý výsledok chcete vrátiť (tu x * y).

Teraz sa môžete odvolávať na túto funkciu (inými slovami nazývať funkciu) od niekde inde vo vašom kóde jednoduchým použitím názvu funkcie a zadaním hodnoty pre každý argument.

Do pracovného hárka umiestnite príkazové tlačidlo a pridajte nasledujúce riadky kódu:

Dim z As Double

z = Area(3, 5) + 2

MsgBox z

vysvetlenie: Funkcia vráti hodnotu, takže musíte túto hodnotu zachytiť vo svojom kóde. Pre túto možnosť môžete použiť inú premennú (z). Ďalej môžete k tejto premennej pridať ďalšiu hodnotu (ak chcete). Nakoniec zobrazte hodnotu pomocou MsgBox.

Výsledok po kliknutí na príkazové tlačidlo na hárku:

Výsledok funkcie VBA programu Excel

náhradník

Ak chcete, aby aplikácia Excel VBA vykonávala niektoré akcie, môžete použiť submenu. Vložte čiastočný modul do modulu (V editore jazyka Visual Basic kliknite na položku Vložiť, modul). Napríklad submenu s názvom Plocha.

Sub Area(x As Double, y As Double)

MsgBox x * y

End Sub

vysvetlenie: Tento submenu má dva argumenty (typu Double). Nemáte návratový typ! Môžete sa obrátiť na tento submenu (zavolajte sub) z niektorej inej časti vo vašom kóde jednoduchým použitím názvu čiastkovej a dávať hodnotu pre každý argument.

Na pracovný hárok umiestnite príkazové tlačidlo a pridajte nasledujúci riadok kódu:

Area 3, 5

Výsledok po kliknutí na príkazové tlačidlo na hárku:

Excel VBA Sub Výsledok

Vidíte rozdiel medzi funkcioua sub? Funkcia vrátila hodnotu 15. Pridal sme hodnotu 2 do tohto výsledku a zobrazíme konečný výsledok. Keď sme nazvali sub, nemali sme nad výsledkom žiadnu väčšiu kontrolu (15), pretože sub nedokáže vrátiť hodnotu!

Tiež si prečítajte: