Lang L: none (table-of-contents)
See õpetus õpetab teile, kuidas kutsuda alamprotseduuri VBA teisest alamprotseduurist
On väga kasulik kirjutada koodi, mida saab korduvalt kasutada ja mida saab kutsuda oma projekti mitmest alamprotseduurist - see võib säästa tohutult aega ja muudab VBA -koodi palju tõhusamaks.
Alamprotseduuri käivitamine teisest alamprotseduurist
Mõelge allpool toodud 3 alamprotseduurile:
1234 | Alamkatse rutiin ()Käivita rutiin1RunRoutine2End Sub |
123 | AlamjooksRutiin1 ()MsgBox "Tere hommikust"End Sub |
123 | AlamjooksRutiin2 ()MsgBox "Tänane kuupäev on" ja vorming (kuupäev, "kk/pp/aaaa")End Sub |
Kui käivitame alamprotseduuri - TestRoutine - see kutsub RunRoutine1 ja ilmuvad RunRoutine2 ja 2 sõnumikastid.

Teiste alamprotseduuride kaudu helistatavate alamprotseduuride arv ei ole piiratud.
Kõneavalduse kasutamine
Koodi lugemise hõlbustamiseks võite protseduuri nime ees kasutada ka kõnede avaldust. See ei mõjuta aga koodi käitamist ega salvestamist.
1234 | Alamkatse rutiin ()Helistage RunRoutine1Helistage RunRoutine2End Sub |

Abile helistamine argumentidega
Samuti on võimalik helistada alam argumentidega
1234 | Alamkatse rutiin ()RunRoutine1 ("Melanie")RunRoutine2 ("Ilusat päeva")End Sub |
123 | Alamkäitusrutiin1 (strName kui string)MsgBox "Tere hommikust" & "& strNameEnd Sub |
123 | Sub RunRoutine2 (strMessage kui string)MsgBox "Tänane kuupäev on" & Vorming (kuupäev, "mm/dd/yyyy") & VbCrLf & strMessageEnd Sub |

Nimega argumentidega subile helistamine
Kui nimetate oma argumendid, ei pea te neid alamrutiinidele samas järjekorras edastama.
123 | Alamkatse rutiin ()RunRoutine1 strGreeting: = "Kuidas läheb?", StrName: = "Melanie"End Sub |
123 | Sub RunRoutine1 (strName kui string, strGreeting kui stringMsgBox "Tere hommikust" & "& strName & vbCrLf & strTervitusEnd Sub |
