Hogyan hívhat egy alprogramot a VBA-ban az Excelben (4 példa)

  • Ossza Meg Ezt
Hugh West

Ebben a cikkben megmutatom, hogyan hívhatsz meg egy Sub egy másiktól Sub vagy Funkció a oldalon. VBA a oldalon. Excel Megtanulod, hogy hívd a Sub argumentumokkal vagy anélkül, valamint mindkettő Nyilvános és Privát Helyettesek .

Hogyan hívhat meg egy alprogramot a VBA-ban az Excelben (gyorsnézet)

Megjegyzés: Itt egy Sub a címen. Sub2 hív egy Sub a címen. Sub1 .

Gyakorlati munkafüzet letöltése

VBA hívás Sub.xlsm

Töltse le ezt a gyakorlókönyvet, hogy gyakorolja a feladatot, miközben ezt a cikket olvassa.

4 mód a VBA alprogramok hívására az Excel-ben

Itt van egy Sub a oldalon. VBA a címen. Sub1 .

Ha futtatod Sub1 , akkor megkapja az üzenetet "Sub1 is Run."

Ma az a célunk, hogy megtanuljuk, hogyan hívhatjuk ezt a Sub egy másiktól Sub vagy Funkció minden lehetséges módon.

1. Érvek nélküli alalkalmazás hívása egy másik alalkalmazásból a VBA-ban az Excelben

Először is, hívunk egy Sub egy másik érv nélkül Sub a oldalon. VBA .

Tessék, Sub1 a Sub érvek nélkül.

Most hívjuk a Sub Sub1 egy másiktól Sub a címen. Sub2 .

A Sub Sub1 egy másiktól Sub , akkor a kódsort kell használnia:

Sub1

Vagy

Sub1 hívása

Ha most fuss Sub2 , Sub1 meghívásra kerül, és az üzenet "Sub1 is Run." fog megjelenni.

2. Egy alprogram hívása egy másik alprogramból származó érvekkel a VBA-ban az Excelben

Most hívunk egy Sub egy másik Sub a oldalon. VBA .

Itt megváltoztattuk a Sub Sub1 oly módon, hogy tartalmaz egy argumentumot, az úgynevezett Input_Value , és futtatásakor megjeleníti ezt az argumentumot.

Hogy ezt hívják Sub egy másiktól Sub ( Sub2 ), akkor a kódsort kell használnunk:

Sub1(Input_Value)

Vagy

Sub1(Input_Value) hívása

Itt használtuk:

Sub1(10) hívása

Most, amikor lefuttatjuk Sub2 , Sub1 meghívásra kerül a bemeneti 10 , és 10 megjelenik egy Üzenetdoboz .

Hasonló olvasmányok:

  • Hogyan adjunk vissza egy értéket a VBA-funkcióban (mind a tömbi, mind a nem tömbi értékek)?
  • Az LCase funkció használata a VBA-ban az Excelben (4 példával)
  • A VBA SPLIT funkció használata az Excelben (5 példa)
  • A TRIM funkció használata a VBA-ban az Excelben (definíció + VBA-kód)

3. Alprogram hívása érvekkel/érvek nélkül egy felhasználó által definiált függvényből a VBA-ban az Excelben

Hívhat egy Sub egy Felhasználó által meghatározott funkció a oldalon. VBA .

Sub érvek nélkül

Hívjunk egy Sub először érvek nélkül.

Itt ismét megváltoztattuk a Sub Sub1 az érvek nélkülire.

Most létrehozunk egy Funkció a címen. Funkció1 és hívja Sub1 ebből a funkcióból.

Hívni egy Sub egy függvényből, a használandó kódsor ugyanaz:

Sub1

Vagy

Sub1 hívása

Most, ha beillesztjük Funkció1 a munkalap bármely cellájában, Sub1 meghívásra kerül, és egy Üzenetdoboz megjelenik "Sub1 is Run." .

Sub érvekkel

Hívhat egy Sub argumentumokkal egy Felhasználó által meghatározott funkció a oldalon. VBA a oldalon. Excel .

Itt megváltoztattuk Sub1 az érvekkel rendelkezőhöz.

Most hívtuk Sub1 a címről Funkció1 a kódsorban:

Sub1(10) hívása

Ha most beillesztjük Funkció1 a munkalapunk bármely cellájában, akkor a következő fog megjelenni 10 egy Üzenetdoboz .

4. Privát alprogram hívása egy másik alprogramból vagy funkcióból a VBA-ban az Excelben

Mostanáig, mi hívtunk egy Nyilvános alprogram egy másiktól Sub vagy Funkció Ezúttal megmutatjuk, hogyan hívhatod meg a Private Sub egy másiktól Sub vagy Funkció a oldalon. VBA .

Hívás egy aluljáróból:

Csak akkor hívhat egy Private Sub egy másiktól Sub ha mindkettő ugyanabban a modulban van az Ön VBA ablak.

Itt megváltoztattuk Sub1 egy Private Sub a következő kifejezés hozzáadásával Privát az első sorban. És hívta meg a Sub2 amely ugyanabban a modulban található.

Ha most lefuttatod Sub2 , akkor kap egy Üzenetdoboz a megjelenítésével 10 .

Hívás egy függvényből:

Ugyanez vonatkozik a függvényekre is. Private Sub egy Funkció a oldalon. VBA , a Sub és a Funkció ugyanabban a modulban kell lennie.

Itt beillesztettük a Private Sub Sub1 és a Funkció Funkció1 ugyanabban a modulban.

Ha most beillesztjük Funkció1 a munkalapunk bármely cellájában, egy Üzenetdoboz megjelenik 10 .

Összefoglaló

Íme a ma megvitatott pontok összefoglalása:

  • Hívhat egy Sub egy másiktól Sub vagy Felhasználó által meghatározott funkció a oldalon. VBA a következő kifejezés használatával "Hívás" a következő névvel Sub , vagy egyszerűen csak a nevét a Sub .
  • Ha a Sub meghívandó tartalmaz egy érv , meg kell hívnia a Sub bármelyik értékével érv .
  • Ha a Sub a meghívandó Privát az egyiket, akkor egy másikból kell hívni Sub vagy Funkció ugyanannak a modulnak.

Következtetés

Ezekkel a módszerekkel meghívhat egy Sub egy másiktól Sub vagy Funkció a oldalon. VBA Kérdése van? Kérdezzen bátran.

Hugh West nagy tapasztalattal rendelkező Excel-oktató és elemző, több mint 10 éves tapasztalattal az iparágban. Számvitel és pénzügy szakos alapdiplomát, valamint üzleti adminisztrációból mesterképzést szerzett. Hugh szenvedélye a tanítás, és egyedülálló tanítási megközelítést dolgozott ki, amely könnyen követhető és érthető. Az Excelben szerzett szakértői tudása világszerte több ezer diáknak és szakembernek segített abban, hogy készségeiket és karrierjüket kiválóan teljesítsék. Hugh blogján keresztül megosztja tudását a világgal, ingyenes Excel-oktatóanyagokat és online képzéseket kínálva, hogy segítse az egyéneket és a vállalkozásokat teljes potenciáljuk kibontakoztatásában.