Excel VBA bilan INDEX MATCH-dan qanday foydalanish kerak

  • Buni Baham Ko'Ring
Hugh West

Siz VBA kodingiz va ilovalaringizda VLOOKUP funksiyasi , CHOOSE funksiyasi va PMT funksiyasi kabi oʻrnatilgan Excel ish sahifasi funksiyalaridan foydalanishingiz mumkin. shuningdek. Haqiqatan ham, Excel ish varag'i funksiyalarining aksariyatiga VBA kod da kirish va foydalanish mumkin. INDEX & Excel VBA kodidagi ishchi varaq funktsiyalarini MATCH.

Nega VBA da Excel Ish varaq funksiyalaridan foydalanmoqchisiz kod ? Siz foydalanayotgan kodning funksionalligini kengaytirish uchun. Bundan tashqari, agar funksionallik allaqachon mavjud bo'lsa, haqiqatan ham kerak bo'lmasa, o'zingizning funktsiyalaringizni o'ylab topishingiz shart emas. Siz qilishingiz kerak bo'lgan yagona narsa o'zingizga kerak bo'lgan funksiyaga kirishdir, chunki u allaqachon mavjud va g'ildirakni qayta ixtiro qilishning hojati yo'q.

Shunday qilib, INDEX  MATCHdan qanday foydalanishni ko'rsatuvchi misol bilan boshlaylik. Excel VBA bilan.

Biz Excel VBA da INDEX va MATCH funktsiyalardan foydalanamiz. kod , oddiy UserForm yaratish uchun. Shakldan foydalanib, foydalanuvchi talabaning ismini tanlaydi, so'ngra aytilgan talabaning jinsi va ko'z rangi olinadi va qaytariladi.

Amaliyot kitobini yuklab olish

Iltimos, amaliyot darsligini yuklab oling. o'zingizni mashq qiling.

INDEX-MATCH.xlsx

VBA kodida INDEX va MATCHdan foydalanish uchun 9 ta oson qadam

INDEX va MATCH Murakkab qidiruvlarni amalga oshirish uchun funktsiyalar ko'pincha formulalarda kombinatsiyalangan holda qo'llaniladi. Ikkisi birgalikda VLOOKUP ga nisbatan ma'lum afzalliklarni taklif qiladi.

Biz allaqachon batafsil ma'lumotlarni ko'rib chiqdik, qanday qilib INDEX va MATCH ilg'or vazifalarni bajarish uchun. Excel ish kitobida to'g'ridan-to'g'ri ishchi varaq formulasi sifatida, oldingi qo'llanmada qidiradi. Endi biz INDEX va MATCH funksiyalaridan VBA kod da shunga oʻxshash funksiyalarni taqdim etish uchun qanday foydalanishni koʻrib chiqamiz. Biz yaratmoqchi bo'lgan UserForm ni qidiring.

1-qadam: Ma'lumotlar to'plamida INDEX va MATCH funksiyalarini qo'llash

  • Makromizda ikkita varaqdan boshlaymiz. -yoqilgan ish kitobi. Ulardan biri UserForm deb nomlangan bo'sh varaq, ikkinchisi StudentInformation deb nomlangan varaq bo'lib, unda talaba ismlari, ularning jinsi va ko'z rangi ko'rsatilgan diapazon mavjud. quyida ko'rsatilgan.

Keling, INDEX dan foydalanmoqchi bo'lsak, tezda eslatib o'taylik. va MATCH Funktsiyalar bitta formulada, haqiqiy ish varag'ida biz qidirmoqchi bo'lgan talabaning ismi jinsini beradi. Biz quyidagi formuladan foydalanamiz:

=INDEX(B2:B31, MATCH("Diana Graham", A2:A31, 0))

  • CTRL-ENTER , biz quyida ko'rsatilgan jins sifatida qaytarilgan Ayollar qiymatini olamiz.

2-qadam: B ustunining nomini StudentNamesga o'zgartiring

  • Endi biz diapazonni A2: A31 , Talaba nomlari deb nomlaymiz.

  • Sichqonchaning oʻng tugmachasini bosib, Yashirish-ni tanlash orqali StudentInformation varagʻini yashiring. foydalanuvchi tahrirlashi yoki koʻrishini xohlamaysiz.

3-qadam: Visual Basic oynasini oching

  • Endi UserForm varagʻi faollashtirilgan holda biz ga oʻtamiz. Dasturchi > Kod > Visual Basic Editor (VBE) ni ochish uchun Visual Basic .
  • VBE interfeysi ga bir marta quyida ko'rsatilgandek Insert, UserForm-ga o'tamiz. .

4-qadam: Xususiyatlarni o'zgartirish va matn qutilarini qo'shish

  • Xususiyatlar Oynasidan foydalanish , formamiz nomini StudentLookup deb o'zgartiramiz, Sarlavhani Talaba ma'lumotlarini qidirishga o'zgartiramiz, Orqaga rang ni ochiq ko'k rangga o'zgartiramiz va balandlikni 300<2 ga o'rnatamiz> px va kengligi 350 px. Agar Xususiyatlar oynasi ko'rinmasa, uni ko'rish uchun klaviaturadagi F4 tugmasini bosing.

  • Biz Endi Asboblar qutisi yordamida yorliq qo'yadi (agar siz asboblar panelini ko'rmasangiz, negadir Ko'rish, Asboblar qutisi bo'limiga o'ting), Talabani tanlash uchun Sarlavhani o'zgartiring va biz o'zgartiramiz Bu holda BackColor oq rangga. Shriftni Gruziya , shrift uslubini qalin , shrift hajmini 12 va markaz matnni tekislang. Foydalaniladigan maxsus effekt quyida ko'rsatilganidek 1– fmSpecialEffectRaised bo'ladi.

  • Endi biz pastki qismga ochilgan oynani joylashtiramiz. yorliq. Ushbu kombinatsiyalangan oynaga cmdStudentName nom bering va RowSource uchun StudentNames.

  • Koʻrish uchun kiriting. birlashgan oynaning RowSource ni o'rnatish effekti, Ishga tushirish tugmasini bosing Sub/UserForm .
  • Endi <1 o'rnatilganligi sababli>RowSource nomli diapazonga, foydalanuvchi UserForm-dagi ochiladigan strelkani bosganida, birlashgan oynada quyida ko'rsatilganidek, avtomatik ravishda nomlangan diapazondagi talaba nomlari ko'rsatiladi.

  • Yopish tugmasini bosish orqali UserForm-ni yoping. VBE ga qaytish uchun Alt-F11 tugmasini bosing.
  • VBE ga qaytganingizdan so'ng, UserFormga boshqa yorliq qo'shing ( birlashgan oyna ostida) va Sarlavha ni Gender ga o'zgartiring va biz bu holda Orqaga rang ni oq rangga o'zgartiramiz. Shriftni Gruziya , shrift uslubini qalin , shrift hajmini 12 va markazni matnni tekislang. . Foydalanadigan maxsus effekt quyida ko'rsatilganidek 1– fmSpecialEffectRaised bo'ladi.

  • Matn qutisini yaratish ostida Gender yorlig'i va uni txtGender deb nomlang.
  • Qo'shish Ko'z Rang va nomli matn qutisiQuyida ko'rsatilgandek txtEyeColour . UserForm bir xil koʻrinishga ega boʻlishini taʼminlash uchun UserForm avval shaklga qoʻshilgan ikkita yorliq bilan bir xil xususiyatlardan foydalaning.

  • Endi Hozirgacha boshqaruv tugmasidan foydalanib UserForm ga qo'shilgan barcha boshqaruv elementlarini tanlang.

  • Markaz gorizontal, quyida ko'rsatilganidek.

O'qing Batafsil: Excelda INDEX MATCH formulasidan qanday foydalanish kerak (9 ta misol)

Shunga o'xshash o'qishlar

  • Excel INDEX MATCH Agar katakchada matn bo'lsa
  • Bir nechta natijalarni yaratish uchun Excelda INDEX-MATCH formulasidan qanday foydalanish kerak
  • Excelda bir nechta satrlar indeksi moslashuv yig'indisi (3 usul)
  • Excel VBA dasturlashni o'rganing & Makroslar (bepul o'quv qo'llanma – bosqichma-bosqich)
  • Excel VBA-dagi 22 ta makro misollar

5-qadam: Asboblar qutisidan tugma qo'shish

  • Keyin, Asboblar qutisi yordamida formaga tugmacha qo'shing. Tugmaning Nomini cmdLookUp ga, BackColor -ni och to'q sariq rangga O'zgartiring , Tahoma shriftini saqlang va qalin uslubni qalin ga o'zgartiring, nihoyat tugmaning Sarlavhasi ni Qarang yuqoriga Talaba o'zgartiring Tafsilotlar quyida ko'rsatilganidek.

6-qadam: VBA kodini kiriting

  • O'ng tugmasini bosing , yangi qo'shilgan tugma va tanlang Ko'rish Kod .

  • Tugma uchun quyidagi kodni kiriting bosish hodisasi:

2332

Biz uch oʻzgaruvchi ni eʼlon qilish va eʼlon qilinganlarga maʼlumotlar turini belgilashdan boshlaymiz. variant ma'lumotlar turlari. Variant ma'lumotlar turi boshlash uchun yaxshi ma'lumot turidir. Chunki ish varag'i funksiyalari bilan ishlashda siz har doim ham natijalarga ishonchingiz komil bo'lmasligi mumkin. Shuning uchun, ish boshlaganingizda ma'lumotlar turi variantidan foydalaning.

Keyinroq, integer yoki string kabi boshqa aniqroq ma'lumotlar turlaridan birini qo'llash tavsiya etiladi. Kengaytirilgan uzunroq kod uchun maʼlumotlar turi varianti xotiradan boshqa maʼlumotlar turlari kabi unumli foydalanmaydi.

Oʻzgaruvchi a foydalanuvchi tanlagan variantdan qiymatni chizish. UserForm da ochiladigan ochiladigan oyna. Agar tanlov bo'lmasa, boshqa barcha matn qutilari bo'sh bo'ladi.

Agar siz kombo qutidan talaba nomini tanlasangiz. UserForm, , keyin b o'zgaruvchisi INDEX Worksheet funktsiyasidan MATCH Funktsiya bilan birgalikda foydalanib qiymatni tortadi. VBA kodi, ko'rsatilganidek.

U qiymatni asosan ishchi varaq funksiyasi bilan bir xil sintaksisdan foydalanib qidiradi. VBA da ishchi varaq funksiyalaridan foydalanilganda, bu alohida holatda VBA IntelliSense unchalik intuitiv emas, shuning uchun tanishish varag'i bilimlaridan olingan sintaksis tavsiya etiladi. C o'zgaruvchisi INDEX Ish varag'i Funktsiya yordamida MATCH Funktsiya VBA kodida foydalanuvchi birlashgan oynadan variantni tanlaganida.

B o'zgaruvchisi jinsdan <1 qiymatga ega bo'ladi>ustun ishchi varaqda, o'zgaruvchi c ishchi varaqdagi Ko'z rangi ustunidan qiymat oladi.

Gender matn maydoni b bilan to'ldirilgan. qiymat va ko'z rangi matn maydoni c qiymati bilan to'ldiriladi.

Batafsil o'qing: Excel VBA hodisalari (to'liq yo'riqnoma)

7-qadam: Buyruq tugmachasini kiriting

  • Endi ish kitobingizdagi UserForm deb nomlangan ish varag'iga o'ting. Format , quyida ko'rsatilganidek, va ExcelWIKI tomonidan taqdim etilgan rasmni qo'shing .

  • O'tish Dasturchi > Boshqaruv > Insert > ActiveX boshqaruvlari.

  • Ko'rsatilgandek tugmani qo'ying .

  • Tugma tanlangan holda, o'tish Dasturchi > Boshqaruv > Xususiyatlar .

  • tugmaning Nomini cmdShowForm 2> va Izoh dan Qidiruv Talaba haqida maʼlumot .

8-qadam: Koʻrish Kodni qidiring

  • Tugmani o'ng tugmasini bosing va ko'rsatilganidek ni tanlang Kodni ko'rish quyida.

  • Quyidagi kodni kiriting:
3756

9-qadam: Yakuniy natijani ko'rsating

  • Qaytish ish varag'iga Belgilanmagan Dizayn Rejim ga ishonch hosil qiling.
  • Shaklni ko'rsatish uchun tugmasini bosing.

  • Tanlash talabaning ismi kombo-box yordamida. Kod talabaning jinsi va ko'z rangini avtomatik ravishda qaytaradi.

Ish kitobingizni makro-yoqilgan ish kitobi sifatida saqlashni unutmang. , agar siz hali buni qilmagan bo'lsangiz va sizda mavjud bo'lsa, biz INDEX & Qidiruv formasini yaratish uchun Excel VBA kodidagi MATCH ishchi varaq funksiyalari .

Batafsil oʻqing: Bir nechta qiymatlarni gorizontal ravishda qaytarish uchun Excel INDEX-MATCH formulasi

Xulosa

Excel juda ko'p foydali ish varag'i funksiyalariga ega, ulardan VBA da, xuddi INDEX & Excel VBA kodidagi ishchi varaq funktsiyalarini MATCH. Bu funksiyalar sizga VBA kodingizni kengaytirish imkonini beradi. Agar ular standart Excel<2 da qanday ishlashini allaqachon bilsangiz> ish varag'i keyin bilimlarni VBA uchun moslashtirish orqali o'rganish egri chizig'i unchalik katta emas. Ishchi varaqning VBA kodida funksiyalariga kirish haqiqiy vaqtni tejash imkonini beradi. Chunki allaqachon mavjud boʻlgan funksiyalar uchun maxsus funksiyalarni ishlab chiqish shart emas.

Iltimos, sharh qoldiring va ayting.Agar siz VBA kodingiz va ilovalaringizda ishchi varaq funksiyalaridan foydalansangiz, bizga murojaat qiling.

Koʻrib chiqish boʻlimi: Tushunganingizni sinab koʻring

1) A ustunida uchta elementdan iborat oddiy roʻyxatni oʻrnating, jumladan mandarin, sabzi va apelsin. , keyin B ustunidagi har bir element yonidagi katakchada A ustunidagi elementlar meva yoki sabzavot ekanligini ko'rsating, namuna ma'lumotlaringizni sozlashni tugatganingizdan so'ng, INDEX & MATCH sabzi meva yoki sabzavot ekanligini yetkazib berish uchun kombinatsiya funksiyasi.

2) NFL bosh murabbiylari va ular murabbiylik qilayotgan tegishli jamoa haqida ESPN maʼlumotlar toʻplamidan foydalaning. Foydalanuvchiga matn qutisiga ma'lum bir murabbiyning ismini kiritish imkonini beruvchi foydalanuvchi formasini yarating. Keyin u murabbiylik qilayotgan jamoani foydalanuvchi yuborish tugmasini bosganida boshqa matn qutisiga yetkazing. Foydalanish INDEX & VBA kodingizdagi MATCH ish varag'i funksiyalarining kombinatsiyasi.

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.