VBA Call Sub (stapsgewijze handleiding) - Hoe subroutine te bellen in Excel VBA?

Wat is Call Sub in VBA?

We kunnen alle subprocedures van dezelfde module in een enkele subroutine uitvoeren en het proces om ze uit te voeren in een enkele VBA-subroutine genaamd "Call Sub".

In sommige gevallen moeten we mogelijk een enorme hoeveelheid code schrijven en het schrijven ervan in een enkele macro veroorzaakt veel problemen bij het debuggen van de code. In het begin heeft iedereen de neiging om dit puur te doen vanwege het gebrek aan kennis over de “Call Sub” -methode.

Het is geen goede gewoonte om alle codes in één enkele subprocedure te bewaren. We moeten ze opsplitsen in meerdere subprocedures om de code te vereenvoudigen.

Hoe subroutine te bellen in Excel VBA?

Het uitvoeren van de Excel-macro van de ene procedure naar de andere maakt het leven gemakkelijker, puur op basis van het besparen van veel tijd tijdens het uitvoeren en het debuggen van de code in geval van een fout.
Code:

Sub Code_1 () Bereik ("A1"). Waarde = "Hallo" End Sub Subcode_2 () Bereik ("A1"). Interior.Color = rgbAquamarine End Sub

In de bovenstaande afbeelding hebben we twee subprocedures. De eerste is "Code_1" en de tweede is "Code_2".

In de eerste VBA-oproepsubcode heb ik zojuist een code geschreven om een ​​waarde in cel A1 in te voegen als 'Hallo'. In de tweede subprocedure heb ik de code geschreven om de inwendige kleur van cel A1 te veranderen in "rgbAquamarine".

Nu zal ik de eerste code uitvoeren, dwz "Code_1".

Nu zal ik de tweede code uitvoeren, dwz "Code_2".

Hier heb ik de codetijden uitgevoerd.

Door de VBA "call Sub" te gebruiken, kunnen we beide subprocedures in slechts één macro uitvoeren. We hoeven alleen het woord "Oproep" toe te voegen, gevolgd door een macronaam.

Kijk naar de onderstaande grafische afbeelding.

Ik heb de code alleen in de eerste subprocedure genoemd als “Oproepcode_2”. Laten we om het nu te begrijpen de code regel voor regel uitvoeren. Druk op de F8-toets. Het zal de macronaam markeren.

Druk nog een keer op de F8-toets om naar de volgende regel te springen.

De geelgekleurde lijn geeft aan dat de gemarkeerde code wordt uitgevoerd als we nog een keer op de F8-toets drukken. Druk nu op de F8-toets.

Zoals we kunnen zien, heeft het het woord "Hallo" in cel A1 ingevoegd. Nu is de regel "Oproepcode_2" gemarkeerd.

"Oproepcode_2" heeft de taak om de kleur van het interieur van cel A1 te veranderen en het woord "Oproepcode_2" zal deze code alleen uitvoeren vanuit de eigenlijke subprocedure.

Maar druk op de F8-toets om de magie te zien.

Het is naar de genoemde naam van de subprocedure gesprongen. Druk nogmaals op de F8-toets.

Nu is de eigenlijke taakregel gemarkeerd, om dit uit te voeren, drukt u nog een keer op de F8-toets.

Op deze manier kunnen we veel subprocedures uitvoeren vanuit één subprocedure door de subprocedure bij hun naam te noemen met het woord 'Oproep'.

Opmerking:

  • We kunnen de macro van een andere subprocedure uitvoeren zonder het woord "Call" te gebruiken, maar gewoon door de macronaam zelf te noemen.
  • Dit is niet de beste praktijk, want als de macro-subprocedure haakjes bevat die u wilt uitvoeren, is het woord "Oproep" verplicht.
  • Gebruik naar mijn persoonlijke mening altijd het woord "Bellen", want het is slechts een woord van 4 letters waarmee anderen de code correct kunnen begrijpen.

Interessante artikelen...