Ynhâldsopjefte
Yn dit artikel sil ik jo sjen litte hoe't jo in Sub kinne neame fan in oare Sub of Funksje yn VBA yn Excel . Jo sille leare hoe't jo in Sub neame mei of sûnder arguminten, lykas sawol Iepenbier as Private Subs .
Hoe kinne jo in sub neame yn VBA yn Excel (Quick View)
Opmerking: Hjir in Sub neamd Sub2 ropt in Sub neamd Sub1 .
Download Practice Workbook
VBA Call Sub.xlsm
Download dit oefenboek om de taak út te oefenjen wylst jo dit artikel lêze.
4 Manieren om in Sub yn VBA te belje yn Excel
Hjir hawwe wy in Sub yn VBA mei de namme Sub1 .
As jo Sub1 útfiere, krije jo it berjocht "Sub1 is Run."
Hjoed ús doel is om te learen hoe't wy dit Sub kinne neame fan in oare Sub of Funksje op alle mooglike manieren.
1. Rop in sub sûnder arguminten fan in oare sub yn VBA yn Excel
Earst neame wy in Sub sûnder argumint fan in oare Sub yn VBA .
Hjir, Sub1 is de Sub sûnder arguminten.
No neame wy de Sub Sub1 fan in oare Sub neamd Sub2 .
Om de Sub Sub1 fan in oare Sub te neamen, hawwe jo om de rigel koade te brûken:
Sub1
Of
Call Sub1
No as jo sub2 útfiere, Sub1 sil oanroppen wurde en it berjocht “Sub1 is Run.” sil werjûn wurde.
2. Rop in sub mei arguminten fan in oare sub yn VBA yn Excel
No neame wy in Sub mei arguminten fan in oare Sub yn VBA .
Hjir hawwe wy de Sub Sub1 sa feroare dat it in argumint befettet mei de namme Input_Value , en wannear run, toant dat argumint.
Om dizze Sub te neamen fan in oare Sub ( Sub2 ), wy moatte de rigel koade brûke:
Sub1(Input_Value)
Of
Call Sub1(Input_Value)
Hjir hawwe wy brûkt:
Call Sub1(10)
No, as wy Sub2 útfiere, wurdt Sub1 oanroppen mei de ynfier 10 , en 10 sil werjûn wurde yn in Berjochtfak .
Gelykbere lêzingen:
- Hoe kinne jo in wearde weromjaan yn VBA-funksje (sawol array- as net-arraywearden)
- Brûk LCase-funksje yn VBA yn Excel (mei 4 foarbylden)
- Hoe kin ik Brûk VBA SPLIT-funksje yn Excel (5 foarbylden)
- Brûk TRIM-funksje yn VBA yn Excel (Definysje + VBA-koade)
3. Rop in Sub mei/sûnder arguminten fan in troch de brûker definieare funksje yn VBA yn Excel
Jo kinne ek in Sub neame fanút in User-Defined Function yn VBA .
⧭ Sub sûnder arguminten
Litte wy earst in Sub neame sûnder arguminten .
Hjir binne wy wer feroarede Sub Sub1 nei de iene sûnder arguminten.
No sille wy in Funksje oanmeitsje Funksje1 en rop Sub1 út dy funksje.
Om in Sub fan in funksje op te roppen, is de te brûken rigel koade itselde :
Sub1
Of
Call Sub1
No, as jo Funksje1 ynfoegje yn elke sel fan jo wurkblêd, sil Sub1 oanroppen wurde en in Berjochtfak sil "Sub1 is Run." werjaan.
⧭ Sub mei arguminten
Jo kinne ek in Sub neame mei arguminten fan in User-Defined Function yn VBA yn Excel .
Hjir ha wy Sub1 wer feroare yn dy mei arguminten.
No ha wy Sub1 fan <1 neamd>Funksje1 troch de rigel fan koade:
Call Sub1(10)
No as wy ynfoegje Funksje1 yn elke sel fan ús wurkblêd sil it 10 sjen litte yn in Berjochtfak .
4. Rop in privee sub fan in oare sub of funksje yn VBA yn Excel
Oan no ta hawwe wy in Publike sub neamd fan in oare Sub of Funksje . Dizze kear sille wy sjen litte hoe't jo in Private Sub oanroppe kinne fan in oare Sub of Funksje yn VBA .
⧭ Oproppen fan in sub:
Jo kinne allinich in Private Sub belje fan in oare Sub as se twa binne yn deselde module fan jo VBA finster.
Hjirwy hawwe Sub1 feroare yn in Private Sub troch de term Private ta te foegjen yn 'e earste rigel. En neamde it fan Sub2 dy't yn deselde module sit.
No as jo Sub2 útfiere, krije jo in Berjochtfak werjaan 10 .
⧭ Oproppen fan in funksje:
Itselde foar funksjes. Om in Private Sub op te roppen fan in Funksje yn VBA , moatte de Sub en de Funksje yn de deselde module.
Hjir hawwe wy de Private Sub Sub1 en de Funksjefunksje1 yn deselde module ynfoege.
No as wy Funksje1 ynfoegje yn in sel fan ús wurkblêd, sil in Berjochtfak 10 werjaan.
Gearfetting
Hjir is de gearfetting fan alle punten dy't hjoed besprutsen binne:
- Jo kinne in
Sub fan in oare Sub of User-Defined Function yn VBA troch de term “Call” te brûken mei de namme fan de Sub , of gewoan de namme fan de Sub yn te setten. - As de Sub dy't oan te roppen is in argumint
, moatte jo de Sub neame mei elke wearde fan dat argumint . - As de Sub dy't oanroppen wurde moat wurdt ferklearre as in Private ien, jo moatte it neame fan in oare Sub of Funksje fan deselde module.
Konklúzje
Dizze metoaden brûke, jo kinne in Sub oanroppe fan in oare Sub of Funksje yn VBA yn Excel. Hawwe jo noch fragen? Freegje it ús frij.