Mundarija
Ushbu maqolada men sizga Sub -ni boshqa Sub yoki VBA da Funktsiya dan qanday qilib chaqirishingiz mumkinligini ko'rsataman. Excel . Siz Sub ni argumentli yoki argumentsiz, shuningdek, Ommaviy va Maxfiy Subs deb chaqirishni oʻrganasiz.
Excelda VBA-da Subni qanday chaqirish mumkin (Tezkor ko'rish)
Izoh: Bu erda Sub <1 deb ataladi>Sub2 Sub1 deb nomlangan Sub ni chaqiradi.
Amaliy kitobni yuklab olish
VBA Call Sub.xlsm
Ushbu maqolani o'qiyotganingizda vazifani bajarish uchun ushbu amaliyot kitobini yuklab oling.
VBA-da Sub-ga qo'ng'iroq qilishning 4 usuli Excel
Mana bizda VBA da Sub1 deb nomlangan Sub mavjud.
Agar siz Sub1 -ni ishga tushirsangiz, siz “Sub1 ishga tushirildi” xabarini olasiz.
Bugun Bizning maqsadimiz buni Sub ni boshqa Sub yoki Funktsiya dan qanday qilib barcha mumkin bo'lgan usullarda chaqirishimizni o'rganishdir.
1. Excelda VBA-da boshqa sub-dan argumentlarsiz Sub-ga qo'ng'iroq qiling
Birinchi navbatda, Sub -ni <1-dagi boshqa Sub -dan argumentsiz chaqiramiz>VBA .
Bu yerda, Sub1 argumentlarsiz Sub .
Endi biz Sub Sub1-ni chaqiramiz. boshqa Sub Sub2 deb ataladi.
Boshqa Sub dan Sub Sub1 ga qo'ng'iroq qilish uchun sizda kod qatoridan foydalanish uchun:
Sub1
Yoki
Call Sub1
Endi siz Sub2 -ni ishga tushirsangiz, Sub1 chaqiriladi va “Sub1 is Run.” xabari ko'rsatiladi.
2. Excelda VBA-dagi boshqa sub-dan argumentlar bilan Sub-ni chaqirish
Endi biz VBA-dagi boshqa Sub argumentlari bilan Sub ni chaqiramiz .
Bu erda biz Sub Sub1 ni shunday o'zgartirdikki, unda Kirish_qiymati deb nomlangan argument mavjud va qachon run, bu argumentni ko'rsatadi.
Buni Sub ni boshqa Sub ( Sub2 ) deb chaqirish uchun, biz kod qatoridan foydalanishimiz kerak:
Sub1(Input_Value)
Yoki
Call Sub1(Input_Value)
Bu yerda biz foydalandik:
Call Sub1(10)
Endi, biz Sub2 -ni ishga tushirganimizda, Sub1 10 kiritish bilan chaqiriladi va 10 ko'rsatiladi. Xabar qutisi .
Shunga o'xshash o'qishlar:
- Qiymatni qanday qaytarish kerak VBA funksiyasida (massiv va massiv bo'lmagan qiymatlar)
- Excelda VBA-da LCase funksiyasidan foydalanish (4 ta misol bilan)
- Qanday qilish kerak Excelda VBA SPLIT funksiyasidan foydalanish (5 ta misol)
- Excelda VBA-da TRIM funksiyasidan foydalanish (ta'rif + VBA kodi)
3. Excelda VBA-da foydalanuvchi tomonidan aniqlangan funktsiyadan argumentlar bilan/argumentlarsiz Sub-ni chaqirish
Shuningdek, Foydalanuvchi tomonidan belgilangan funksiya dan Sub ga qo'ng'iroq qilishingiz mumkin. VBA da.
⧭ Argumentsiz sub
Keling, avval argumentlarsiz Sub ni chaqiraylik .
Mana, biz yana o'zgarganmiz Sub Sub1 ni argumentsiz biriga.
Endi biz Funktsiya deb nomlangan funksiyani yaratamiz. Funktsiya1 va ushbu funktsiyadan Sub1 ga qo'ng'iroq qiling.
Funktsiyadan Sub ni chaqirish uchun foydalaniladigan kod qatori bir xil bo'ladi. :
Sub1
Yoki
Call Sub1
Endi, agar siz ishchi varaqingizning istalgan katakchasiga Funktsiya1 ni kiritsangiz, Sub1 chaqiriladi va Xabar qutisi ekranda “Sub1 is Run.” .
⧭ Argumentli sub
Siz Excel -dagi VBA da Foydalanuvchi tomonidan belgilangan funksiya dan argumentlar bilan Sub ga ham qoʻngʻiroq qilishingiz mumkin.
Bu yerda biz Sub1 ni yana argumentli ga almashtirdik.
Endi biz <1 dan Sub1 ni chaqirdik>Funktsiya1 kod qatori bo'yicha:
Call Sub1(10)
Endi
4. Boshqa sub'ektdan Private Sub-ga qo'ng'iroq qiling yoki Excelda VBA-dagi funksiya
Hozirgacha biz Ommaviy Sub ni boshqa Sub yoki
⧭ Subdan qo'ng'iroq qilish:
Siz boshqasidan Shaxsiy sub ga qo'ng'iroq qilishingiz mumkin, agar ular bo'lsa, boshqa Sub ikkitasi VBA oynangizning bir xil modulida.
Bu yerdabiz birinchi qatorga Maxfiy atamasini qo'shish orqali Sub1 ni Shaxsiy pastki ga o'zgartirdik. Va uni bir xil modulda joylashgan Sub2 dan chaqirdi.
Endi siz Sub2 ni ishga tushirsangiz, siz
⧭ Funktsiyadan qoʻngʻiroq qilish:
Funksiyalar uchun ham xuddi shunday. VBA da Funktsiya dan Shaxsiy pastki ga qo'ng'iroq qilish uchun Sub va Funktsiya bo'lishi kerak bir xil modul.
Bu yerda biz Maxfiy pastki Sub1 va Funktsiya Function1 ni bir xil modulga joylashtirdik.
Endi ish varaqimizning istalgan katakchasiga Funktsiya1 ni qo'shsak, Xabar qutisi 10 ni ko'rsatadi.
Xulosa
Bugun muhokama qilingan barcha fikrlarning qisqacha mazmuni:
- Siz qo'ng'iroq qilishingiz mumkin Sub boshqa Sub yoki Foydalanuvchi tomonidan aniqlangan funksiya VBA da nomi bilan “Qoʻngʻiroq” atamasi yordamida Sub yoki shunchaki Sub nomini qo'yish.
- Agar chaqiriladigan Sub argument
, siz Sub ni ushbu argument ning istalgan qiymati bilan chaqirishingiz kerak. - Agar chaqiriladigan Sub deb eʼlon qilingan boʻlsa. Maxfiy bitta, siz uni bir xil modulning boshqa Sub yoki Funktsiya sidan chaqirishingiz kerak.
Xulosa
Ushbu usullardan foydalangan holda, siz Sub ga boshqa Sub yoki Funktsiya dan qo'ng'iroq qilishingiz mumkinExcelda VBA da. Savollaringiz bormi? Bizdan bemalol so'rang.