Excelda VBA-da Subni qanday chaqirish mumkin (4 ta misol)

  • Buni Baham Ko'Ring
Hugh West

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 Funktsiya1 ish varaqimizning istalgan katakchasida, u Xabarlar qutisi da 10 ni ko'rsatadi.

4. Boshqa sub'ektdan Private Sub-ga qo'ng'iroq qiling yoki Excelda VBA-dagi funksiya

Hozirgacha biz Ommaviy Sub ni boshqa Sub yoki Funktsiya . Bu safar biz VBA -da boshqa Sub yoki Funktsiya dan Shaxsiy pastki ga qanday qo'ng'iroq qilishingiz mumkinligini ko'rsatamiz.

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 Xabar qutisi 10 ni koʻrsatmoqda.

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.

Hugh West - bu sohada 10 yildan ortiq tajribaga ega bo'lgan yuqori tajribali Excel treneri va tahlilchisi. Buxgalteriya hisobi va moliya yo‘nalishi bo‘yicha bakalavr va biznes boshqaruvi bo‘yicha magistr darajasiga ega. Xyu o'qitishga ishtiyoqi bor va unga amal qilish va tushunish oson bo'lgan o'ziga xos o'qitish usulini ishlab chiqdi. Uning Excel bo'yicha ekspert bilimlari butun dunyo bo'ylab minglab talabalar va mutaxassislarga o'z malakalarini oshirishga va o'z martabalarida muvaffaqiyat qozonishlariga yordam berdi. Xyu o'z blogi orqali o'z bilimlarini dunyo bilan baham ko'radi, jismoniy shaxslar va korxonalarga o'z salohiyatini to'liq ro'yobga chiqarishga yordam berish uchun bepul Excel darsliklari va onlayn treninglarni taklif qiladi.