Excel VBA podprogram: Ako volať Sub vo VBA s príkladom

Obsah:

Anonim

Čo je to podprogram vo VBA?

Podprogram VBA je kus kódu, ktorý vykonáva špecifický úlohu opísanú v kóde, ale nemá vrátiť výsledok alebo hodnotu. Subrutiny sa používajú na rozdelenie veľkých častí kódu na malé zvládnuteľné časti. Z ktoréhokoľvek miesta v programe je možné opakovane vyvolať podprogramy.

Povedzme, že ste vytvorili používateľské rozhranie s textovými poľami na prijímanie vstupných údajov používateľa. Môžete vytvoriť podprogram, ktorý vymaže obsah textových polí. V takomto prípade je vhodný podprogram hovoru VBA, pretože nechcete vrátiť žiadne výsledky.

V tomto výučbe VBA sa naučíte-

  • Prečo používať podprogramy
  • Pravidlá pomenovania podprogramov a funkcií
  • Syntax podprogramu VBA
  • Ako volať Sub vo VBA

Prečo používať podprogramy

  • Rozdeľte kód na malý zvládnuteľný kód : Priemerný počítačový program má tisíce a tisíce riadkov zdrojového kódu. To predstavuje zložitosť. Podprogramy pomáhajú vyriešiť tento problém rozdelením programu na malé zvládnuteľné kúsky kódu.
  • Opätovné použitie kódu . Povedzme, že máte program, ktorý potrebuje prístup k databáze. Takmer všetky okná v programe budú musieť s databázou interagovať. Namiesto písania samostatného kódu pre tieto okná môžete vytvoriť funkciu, ktorá zvládne všetky interakcie s databázou. Potom ho môžete zavolať z ktoréhokoľvek okna, ktoré chcete.
  • Podprogramy a funkcie sa dokumentujú samy . Povedzme, že máte funkciu CalcLoanInterest a ďalšiu, ktorá hovorí connectToDatabase. Už pri pohľade na názov podprogramu / funkcie bude programátor schopný zistiť, čo program robí.

Pravidlá pomenovania podprogramov a funkcií

Ak chcete používať podprogramy a funkcie, musíte dodržiavať určité pravidlá.

  • Názov podprogramu alebo volania funkcie VBA nemôže obsahovať medzeru
  • Názov volajúceho programu Excel VBA alebo názov funkcie by mal začínať písmenom alebo podčiarkovníkom. Nemôže začínať číslom alebo špeciálnym znakom
  • Názov podprogramu alebo funkcie nemôže byť kľúčové slovo. Kľúčové slovo je slovo, ktoré má vo VBA osobitný význam. Slová ako Súkromné, Sub, Funkcia a Koniec atď. Sú príkladmi kľúčových slov. Kompilátor ich používa na konkrétne úlohy.

Syntax podprogramu VBA

Ak chcete postupovať podľa tohto príkladu, budete musieť v programe Excel povoliť kartu Vývojár. Ak neviete, ako povoliť kartu Vývojár, prečítajte si návod o operátoroch VBA

TU v syntaxi,

Private Sub mySubRoutine(ByVal arg1 As String, ByVal arg2 As String)'do somethingEnd Sub

Vysvetlenie syntaxe

Zákonníka

Akcia

  • „Súkromný sub mySubRoutine (...)“
  • Tu sa kľúčové slovo „Sub“ používa na vyhlásenie podprogramu s názvom „mySubRoutine“ a na spustenie tela podprogramu.
  • Kľúčové slovo Súkromné ​​sa používa na určenie rozsahu podprogramu
  • "ByVal arg1 ako reťazec, ByVal arg2 ako reťazec":
  • Deklaruje dva parametre reťazcového dátového typu názov arg1 a arg2
  • „End Sub“
  • "End Sub" sa používa na ukončenie tela podprogramu

Nasledujúci podprogram akceptuje meno a priezvisko a zobrazuje ich v okne správy.

Teraz ideme programovať a vykonať tento vedľajší postup. Uvidíme toto.

Ako volať Sub vo VBA

Ďalej uvádzame postup krok za krokom, ako volať Sub vo VBA:

  1. Navrhnite používateľské rozhranie a nastavte vlastnosti používateľských ovládacích prvkov.
  2. Pridajte podprogram
  3. Napíšte kód udalosti kliknutia pre príkazové tlačidlo, ktoré volá podprogram
  4. Vyskúšajte aplikáciu

Krok 1) Používateľské rozhranie

Navrhnite používateľské rozhranie tak, ako je to znázornené na obrázku nižšie

Nastavte nasledujúce vlastnosti. Vlastnosti, ktoré nastavujeme

S / N Ovládanie Nehnuteľnosť Hodnota
1 CommandButton1 názov btnDisplayFullName
2 Titulok Celé meno podprogram

Vaše rozhranie by malo teraz vyzerať takto

Krok 2) Pridajte podprogram

  1. Stlačením klávesov Alt + F11 otvorte okno kódu
  2. Pridajte nasledujúci podprogram
Private Sub displayFullName(ByVal firstName As String, ByVal lastName As String)MsgBox firstName & " " & lastNameEnd Sub

TU v kóde,

Zákonníka

Akcie

  • "Súkromný sub displayFullName (...)"
  • Deklaruje súkromný podprogram displayFullName, ktorý akceptuje dva parametre reťazca.
  • „ByVal firstName As String, ByVal lastName As String“
  • Deklaruje dve premenné parametrov firstName a lastName
  • MsgBox krstne meno & "" & priezvisko
  • Volá vstavanú funkciu MsgBox na zobrazenie schránky so správami. Potom odovzdá premenné „firstName“ a „lastName“ ako parametre.
  • Znak „&“ sa používa na zreťazenie týchto dvoch premenných a na doplnenie prázdneho miesta medzi ne.

Krok 3) Zavolanie podprogramu z udalosti kliknutia na príkazové tlačidlo.

  • Kliknite pravým tlačidlom myši na príkazové tlačidlo, ako je to znázornené na obrázku nižšie. Vyberte Zobraziť kód.
  • Otvorí sa editor kódu

Pridajte nasledujúci kód do editora kódu pre udalosť kliknutia príkazového tlačidla btnDisplayFullName.

Private Sub btnDisplayFullName_Click()displayFullName "John", "Doe"End Sub

Okno s kódom by malo teraz vyzerať takto

Uložte zmeny a zatvorte okno kódu.

Krok 4) Testovanie kódu

Na paneli s nástrojmi pre vývojárov vypnite režim návrhu. Ako je uvedené nižšie.

Krok 5) Kliknite na príkazové tlačidlo „Subrutina celého mena“.

Získate nasledujúce výsledky

Stiahnite si vyššie uvedený kód Excel

Zhrnutie:

  • Podprogram je časť kódu, ktorá vykonáva konkrétnu úlohu. Po vykonaní podprogram nevráti hodnotu
  • Podprogramy ponúkajú opätovné použitie kódu
  • Podprogramy pomáhajú rozdeliť veľké časti kódu na malý spravovateľný kód.