Excel VBA-underrutine: Sådan kalder du Sub i VBA med eksempel
Hvad er en underrutine i VBA?
A Subrutine i VBA er et stykke kode, der udfører en bestemt opgave beskrevet i koden, men som ikke returnerer et resultat eller en værdi. Subrutiner bruges til at nedbryde store stykker kode i små håndterbare dele. Underrutiner kan genkaldes flere gange fra hvor som helst i programmet.
Lad os sige, at du har oprettet en brugergrænseflade med tekstbokse til at acceptere brugerinputdata. Du kan oprette en underrutine, der rydder indholdet af tekstfelterne. En VBA-opkaldsunderrutine er passende i et sådant scenarie, fordi du ikke ønsker at returnere nogen resultater.
Hvorfor bruge underrutiner
- Bryd kode op i små håndterbare kode: Et gennemsnitligt computerprogram har tusinder og atter tusinder af kildekodelinjer. Dette introducerer kompleksitet. Subrutiner hjælper med at løse dette problem ved at opdele programmet i små håndterbare bidder af kode.
- Kode genanvendelighed. Lad os sige, at du har et program, der skal have adgang til databasen, næsten alle vinduerne i programmet skal interagere med databasen. I stedet for at skrive separat kode til disse vinduer, kan du oprette en funktion, der håndterer alle databaseinteraktioner. Du kan derefter kalde det fra hvilket vindue du ønsker.
- Underrutiner og funktioner er selvdokumenterende. Lad os sige, at du har en funktion calculateLoanInterest og en anden, der siger connectToDatabase. Ved blot at se på navnet på subrutinen/funktionen, vil programmøren kunne fortælle, hvad programmet gør.
Regler for navngivning af underrutiner og funktioner
For at bruge underrutiner og funktioner er der et sæt regler, som man skal følge.
- Navnet på en underrutine eller en VBA-opkaldsfunktion må ikke indeholde mellemrum
- Et Excel VBA Call Sub- eller funktionsnavn skal starte med et bogstav eller en understregning. Det kan ikke starte med et tal eller et specialtegn
- En underrutine eller funktionsnavn kan ikke være et nøgleord. Et nøgleord er et ord, der har en særlig betydning i VBA. Ord som Privat, Sub, Funktion og Slut osv. er alle eksempler på nøgleord. Compileren bruger dem til specifikke opgaver.
VBA-underrutinesyntaks
Du skal aktivere fanen Udvikler i Excel for at følge dette eksempel. Hvis du ikke ved, hvordan du aktiverer fanen Udvikler, så læs vejledningen videre VBA Operatorer
HER i syntaksen,
Private Sub mySubRoutine(ByVal arg1 As String, ByVal arg2 As String) 'do something End Sub
Syntaks forklaring
Kode | Handling |
---|---|
|
|
|
|
|
|
Den følgende underrutine accepterer for- og efternavnet og viser dem i en beskedboks.
Nu skal vi programmere og udføre denne underprocedure. Lad os se dette.
Sådan ringer du til Sub i VBA
Nedenfor er en trin-for-trin proces om, hvordan du ringer til Sub i VBA:
- Design brugergrænsefladen og indstil egenskaberne for brugerkontrollerne.
- Tilføj subrutinen
- Skriv klikhændelseskoden for kommandoknappen, der kalder subrutinen
- Test applikationen
Trin 1) Brugergrænseflade
Design brugergrænsefladen som vist på billedet nedenfor.
Indstil følgende egenskaber. De egenskaber, som vi indstiller:
S / N | kontrol | Ejendom | Værdi |
---|---|---|---|
1 | KommandoKnap1 | Navn | btnDisplayFuldt Navn |
2 | Caption | Fuldnavn Subrutine |
Din grænseflade skulle nu se ud som følger.
Trin 2) Tilføj subrutine
- Tryk på Alt + F11 for at åbne kodevinduet
- Tilføj følgende underrutine
Private Sub displayFullName(ByVal firstName As String, ByVal lastName As String) MsgBox firstName & " " & lastName End Sub
HER i koden,
Kode | handlinger |
---|---|
|
|
|
|
|
|
Trin 3) Ringer til subrutinen
Kalder subrutinen fra kommandoknappen klik hændelse.
- Højreklik på kommandoknappen som vist på billedet nedenfor. Vælg Vis kode.
- Kodeeditoren åbnes
Tilføj følgende kode i kodeeditoren for klikhændelsen for kommandoknappen btnDisplayFullName.
Private Sub btnDisplayFullName_Click() displayFullName "John", "Doe" End Sub
Dit kodevindue skulle nu se ud som følger
Gem ændringerne og luk kodevinduet.
Trin 4) Test af koden
På udviklerværktøjslinjen skal du slå designtilstanden fra. Som vist nedenfor.
Trin 5) Klik på kommandoknappen 'Fuldnavn Subrutine'.
Du får følgende resultater
Resumé
- En subrutine er et stykke kode, der udfører en bestemt opgave. En subrutine returnerer ikke en værdi efter udførelse
- Subrutiner tilbyder kodegenanvendelighed
- Subrutiner hjælper med at nedbryde store bidder af kode til små håndterbare kode.