Excel VBA potprogram: Kako pozvati Sub u VBA s primjerom
Što je potprogram u VBA?
A Potprogram u VBA je dio koda koji izvršava određeni zadatak opisan u kodu, ali ne vraća rezultat ili vrijednost. Potprogrami se koriste za rastavljanje velikih dijelova koda na male dijelove kojima se može upravljati. Potprogrami se mogu pozvati više puta s bilo kojeg mjesta u programu.
Recimo da ste kreirali korisničko sučelje s tekstualnim okvirima za prihvaćanje korisničkih podataka za unos. Možete stvoriti potprogram koji briše sadržaj tekstnih okvira. Potprogram VBA poziva prikladan je u takvom scenariju jer ne želite vratiti nikakve rezultate.
Zašto koristiti potprograme
- Rastavite kod na mali upravljivi kod: Prosječan računalni program ima tisuće i tisuće redaka izvornog koda. Ovo uvodi složenost. Potprogrami pomažu u rješavanju ovog problema rastavljanjem programa na male upravljive dijelove koda.
- Mogućnost ponovne upotrebe koda. Recimo da imate program koji treba pristupiti bazi podataka, gotovo svi prozori u programu morat će komunicirati s bazom podataka. Umjesto pisanja zasebnog koda za te prozore, možete stvoriti funkciju koja obrađuje sve interakcije s bazom podataka. Zatim ga možete nazvati iz bilo kojeg prozora koji želite.
- Potprogrami i funkcije se sami dokumentiraju. Recimo da imate funkciju CalculateLoanInterest i drugu koja kaže ConnectToDatabase. Samo gledajući naziv potprograma/funkcije, programer će moći reći što program radi.
Pravila imenovanja potprograma i funkcija
Za korištenje potprograma i funkcija postoji niz pravila kojih se morate pridržavati.
- Naziv potprograma ili funkcije VBA poziva ne smije sadržavati razmak
- Excel VBA Call Sub ili naziv funkcije trebao bi započeti slovom ili podvlakom. Ne može započeti brojem ili posebnim znakom
- Naziv potprograma ili funkcije ne može biti ključna riječ. Ključna riječ je riječ koja ima posebno značenje u VBA. Riječi kao što su Private, Sub, Function i End, itd. sve su to primjeri ključnih riječi. Prevodilac ih koristi za određene zadatke.
Sintaksa potprograma VBA
Morat ćete omogućiti karticu Razvojni programer u Excelu da biste slijedili ovaj primjer. Ako ne znate kako omogućiti karticu Razvojni programer, pročitajte tutorial dalje VBA Operaulagatelji
OVDJE u sintaksi,
Private Sub mySubRoutine(ByVal arg1 As String, ByVal arg2 As String) 'do something End Sub
Objašnjenje sintakse
Kodirati | Akcijski |
---|---|
|
|
|
|
|
|
Sljedeći potprogram prihvaća ime i prezime i prikazuje ih u okviru s porukom.
Sada ćemo programirati i izvršiti ovu podproceduru. Da vidimo ovo.
Kako nazvati Sub u VBA
Ispod je korak po korak proces kako nazvati Sub u VBA:
- Dizajnirajte korisničko sučelje i postavite svojstva za korisničke kontrole.
- Dodajte potprogram
- Napišite kod događaja klika za naredbeni gumb koji poziva potprogram
- Testirajte aplikaciju
Korak 1) Korisničko sučelje
Dizajnirajte korisničko sučelje kao što je prikazano na slici ispod.
Postavite sljedeća svojstva. Svojstva koja postavljamo:
S / N | kontrola | Svojstvo | Još malo brojeva |
---|---|---|---|
1 | CommandButton1 | Ime i Prezime | btnDisplayFullName |
2 | Naslov | Puni naziv potprograma |
Vaše sučelje bi sada trebalo izgledati ovako.
Korak 2) Dodaj potprogram
- Pritisnite Alt + F11 da biste otvorili prozor koda
- Dodajte sljedeću potprogram
Private Sub displayFullName(ByVal firstName As String, ByVal lastName As String) MsgBox firstName & " " & lastName End Sub
OVDJE u kodu,
Kodirati | Akcije |
---|---|
|
|
|
|
|
|
Korak 3) Pozivanje potprograma
Pozivanje potprograma iz događaja klika na naredbeni gumb.
- Kliknite desnom tipkom na naredbeni gumb kao što je prikazano na slici ispod. Odaberite Pregled koda.
- Otvorit će se uređivač koda
Dodajte sljedeći kod u uređivač koda za događaj klika naredbenog gumba btnDisplayFullName.
Private Sub btnDisplayFullName_Click() displayFullName "John", "Doe" End Sub
Vaš prozor koda sada bi trebao izgledati ovako
Spremite promjene i zatvorite prozor koda.
Korak 4) Testiranje koda
Na alatnoj traci za razvojne programere isključite način dizajna. Kako je prikazano dolje.
Korak 5) Kliknite na naredbeni gumb 'Podrutina punog naziva'.
Dobit ćete sljedeće rezultate
rezime
- Potprogram je dio koda koji obavlja određeni zadatak. Potprogram ne vraća vrijednost nakon izvršenja
- Potprogrami nude mogućnost ponovne upotrebe koda
- Potprogrami pomažu rastaviti velike dijelove koda na mali kod kojim se može upravljati.