Ce este Call Sub în VBA?
Putem executa toate subprocedurile aceluiași modul într-un singur subrutin și procesul de executare a acestora într-un singur subrutin VBA numit „Apelare sub”.
În unele cazuri, este posibil să fie nevoie să scriem o cantitate imensă de cod și să le scriem într-o singură macro creează o mulțime de probleme în timp ce depanăm codul. La început, toată lumea tinde să facă acest lucru doar din cauza lipsei de cunoștințe despre metoda „Call Sub”.
Nu este o bună practică de a păstra toate codurile într-o singură subprocedură. Trebuie să le împărțim în mai multe subproceduri pentru a simplifica codul.

Cum să apelați subrutina în Excel VBA?
Rularea macrocomenzii Excel dintr-o procedură în alta face viața mai ușoară doar pe baza economisirii mult timp în timp ce rulează, precum și în timp ce depanarea codului în caz de eroare.
Cod:
Sub Code_1 () Range ("A1"). Value = "Hello" End Sub Sub Code_2 () Range ("A1"). Interior.Color = rgbAquamarine End Sub

În imaginea de mai sus, avem două subproceduri. Primul este „Code_1”, iar al doilea este „Code_2”.
În primul subcod de apel VBA, tocmai am scris un cod pentru a insera o valoare în celula A1 ca „Bună ziua”. În a doua procedură secundară, am scris codul pentru a schimba culoarea interioară a celulei A1 în „rgbAquamarine”.
Acum voi rula primul cod, adică „Code_1”.

Acum voi rula al doilea cod, adică „Cod_2”.

Aici am executat codul de ori.
Prin utilizarea „apelului Sub” VBA, putem executa ambele subproceduri numai într-o singură macro. Trebuie doar să adăugăm cuvântul „Apel”, urmat de un nume de macro.
Uită-te la imaginea grafică de mai jos.

Am menționat codul ca „Cod de apel_2” numai în prima subprocedură. Acum, pentru a înțelege, să rulăm codul rând cu rând. Apăsați tasta F8. Se va evidenția numele macro.

Apăsați tasta F8 încă o dată pentru a trece la linia următoare.

Linia galbenă arată că codul evidențiat este pe cale să se execute dacă mai apăsăm tasta F8 încă o dată. Apăsați tasta F8 acum.

După cum putem vedea, a inserat cuvântul „Bună ziua” în celula A1. Acum a fost evidențiată linia „Call Code_2”.
„Call Code_2” are sarcina de a schimba culoarea interioară a celulei A1 și cuvântul „Call Code_2” va executa acest cod numai din sub-procedura reală.
Dar apăsați tasta F8 pentru a vedea magia.

A sărit la numele menționat al subprocedurii. Apăsați din nou tasta F8.

Acum este evidențiată linia de lucru efectivă, pentru a executa această apăsare o dată tasta F8.

Astfel, putem executa multe subproceduri dintr-o subprocedură apelând subprocedura după numele lor cu cuvântul „Apel”.
Notă:
- Putem executa macrocomanda unei alte sub-proceduri fără a utiliza cuvântul „Apel”, ci doar menționând numele macrocomenzii în sine.
- Aceasta nu este cea mai bună practică, deoarece dacă procedura macro sub conține paranteze pe care doriți să o executați, atunci cuvântul „Apel” este obligatoriu.
- În opinia mea personală, folosiți întotdeauna cuvântul „Apelați”, deoarece este doar un cuvânt din 4 litere care permite altora să înțeleagă corect codul.