Apel VBA / Executare sub de la un alt subrutin

Acest tutorial vă va învăța cum să apelați o procedură secundară dintr-o altă procedură secundară în VBA

Este foarte util să scrieți cod care poate fi utilizat în mod repetat și apelat din mai multe subproceduri din proiectul dvs. - poate economisi o cantitate enormă de timp și face codul VBA mult mai eficient.

Rularea unei proceduri secundare dintr-o altă procedură secundară

Luați în considerare cele 3 proceduri secundare de mai jos:

1234 Sub TestRoutine ()RunRoutine1RunRoutine2Sfârșitul Sub
123 Sub RunRoutine1 ()MsgBox „Bună dimineața”Sfârșitul Sub
123 Sub RunRoutine2 ()MsgBox „Data de astăzi este” & Format (Data, „mm / zz / aaaa”)Sfârșitul Sub

Dacă rulăm procedura secundară - TestRoutine - va apela RunRoutine1 și RunRoutine2 și 2 vor apărea casete de mesaj.

Nu există nicio limită pentru numărul de proceduri secundare pe care le puteți apela dintr-o altă procedură secundară.

Utilizarea Declarației de apel

De asemenea, puteți utiliza Declarația de apel în fața numelui procedurii, pentru a vă ușura citirea codului. Cu toate acestea, nu are niciun efect asupra modului în care este rulat sau stocat codul.

1234 Sub TestRoutine ()Apelați RunRoutine1Apelați RunRoutine2Sfârșitul Sub

Apelarea unui Sub cu Argumente

De asemenea, este posibil să apelați un sub cu argumente

1234 Sub TestRoutine ()RunRoutine1 („Melanie”)RunRoutine2 („O zi frumoasă”)Sfârșitul Sub
123 Sub RunRoutine1 (strName ca Șir)MsgBox „Bună dimineața” & „& strNameSfârșitul Sub
123 Sub RunRoutine2 (strMessage as String)MsgBox „Data de astăzi este” & Format (Data, „mm / zz / aaaa”) & VbCrLf & strMessageSfârșitul Sub

Apelarea unui sub cu argumente numite

Dacă vă denumiți argumentele, nu trebuie să le transmiteți în aceeași ordine subrutinelor.

123 Sub TestRoutine ()RunRoutine1 strGreeting: = "Ce mai faci?", StrName: = "Melanie"Sfârșitul Sub
123 Sub RunRoutine1 (strName ca Șir, strGreeting ca șirMsgBox „Bună dimineața” & „& strName & vbCrLf & strGreetingSfârșitul Sub

Vei ajuta la dezvoltarea site-ului, partajarea pagina cu prietenii

wave wave wave wave wave