VBA INDEX MATCH ອີງໃສ່ຫຼາຍເງື່ອນໄຂໃນ Excel (3 ວິທີ)

  • ແບ່ງປັນນີ້
Hugh West

ເມື່ອພວກເຮົາມີຂໍ້ມູນຈຳນວນຫຼວງຫຼາຍແລ້ວ ບາງຄັ້ງມັນຍາກທີ່ຈະດຶງຂໍ້ມູນສະເພາະໃດໆອອກຈາກຊຸດຂໍ້ມູນ. ຮ່ວມກັນກັບຟັງຊັນ INDEX ແລະ MATCH ຂອງ Excel ສາມາດດຶງຂໍ້ມູນປະເພດໃດກໍໄດ້ ແມ້ແຕ່ຢູ່ໃນຊຸດຂໍ້ມູນຂະໜາດໃຫຍ່. ການປະຕິບັດ VBA ແມ່ນວິທີທີ່ມີປະສິດທິພາບທີ່ສຸດ, ໄວທີ່ສຸດ, ແລະປອດໄພທີ່ສຸດເພື່ອດໍາເນີນການໃດໆໃນ Excel. ໃນ​ບົດ​ຄວາມ​ນີ້, ພວກ​ເຮົາ​ຈະ​ສະ​ແດງ​ໃຫ້​ທ່ານ​ເຫັນ 3 ວິ​ທີ​ການ​ທີ່​ແຕກ​ຕ່າງ​ກັນ​ກ່ຽວ​ກັບ​ວິ​ທີ​ການ​ປະ​ຕິ​ບັດ INDEX MATCH ໂດຍ​ອີງ​ໃສ່​ຫຼາຍ​ມາດ​ຖານ ໃນ Excel ກັບ VBA macro .

ດາວ​ໂຫຼດ ປື້ມບັນທຶກວຽກ

ທ່ານສາມາດດາວໂຫຼດປຶ້ມວຽກ Excel ແບບປະຕິບັດໄດ້ຟຣີຈາກບ່ອນນີ້.

VBA INDEX MATCH ອີງໃສ່ຫຼາຍເງື່ອນໄຂ.xlsm

<4 3 ວິທີການກັບ VBA INDEX MATCH ໂດຍອີງໃສ່ຫຼາຍເງື່ອນໄຂໃນ Excel

ໃນພາກຕໍ່ໄປນີ້, ພວກເຮົາຈະສະແດງໃຫ້ທ່ານເຫັນວິທີການປະຕິບັດ INDEX MATCH ໂດຍອີງໃສ່ຫຼາຍເງື່ອນໄຂສໍາລັບໄລຍະໃດຫນຶ່ງ , ສໍາລັບການເລືອກສະເພາະ ແລະ ສໍາລັບຕາຕະລາງ ໃນ Excel ດ້ວຍ VBA .

ຂ້າງເທິງ ພວກເຮົາມີຊຸດຂໍ້ມູນທີ່ບົດຄວາມນີ້ຈະປະຕິບັດຕາມ. ພວກເຮົາມີ ຊື່ນັກຮຽນ , ID ນັກຮຽນ, ແລະ ເຄື່ອງໝາຍສອບເສັງ ຂອງນັກຮຽນແຕ່ລະຄົນໃນຊຸດຂໍ້ມູນ. ພວກເຮົາຈະສະກັດຜົນໄດ້ຮັບທີ່ແນ່ນອນຢູ່ໃນຖັນຫນຶ່ງໂດຍອີງຕາມເງື່ອນໄຂຈາກສອງຖັນອື່ນໆ.

ເງື່ອນໄຂ – 1: ຝັງ VBA ກັບ INDEX MATCH ສໍາລັບການຊອກຫາຫຼາຍມິຕິ (ສອງ) ໃນ Excel

ພິຈາລະນາຮູບພາບຕໍ່ໄປນີ້. ພວກເຮົາໄດ້ບັນທຶກຊື່ຂອງນັກຮຽນສະເພາະ “ Edge” ໃນ CellG4 ; ແລະຖັນທີ່ພວກເຮົາຈະຊອກຫາ ຜົນໄດ້ຮັບ ໃນ, ເຄື່ອງໝາຍການສອບເສັງ , ຖືກເກັບໄວ້ໃນ Cell G5 . ພວກເຮົາຈະຄົ້ນຫາຢູ່ໃນຖັນ ເຄື່ອງໝາຍການສອບເສັງ ແລະເກັບຮັກສາ ເຄື່ອງໝາຍ ທີ່ “ Edge” ໄດ້ເຂົ້າມາໃນ Cell G6 .

<0

ຂັ້ນຕອນໃນການຊອກຫາຜົນໃນ ອາເຣສອງມິຕິ ກັບ INDEX ແລະ MATCH ໃນ Excel ດ້ວຍ VBA ແມ່ນໃຫ້ຢູ່ລຸ່ມນີ້.

ຂັ້ນຕອນ:

  • ໃນຕອນເລີ່ມຕົ້ນ, ກົດ Alt + F11 ເທິງແປ້ນພິມຂອງທ່ານ ຫຼືໄປທີ່ ແຖບ ຜູ້ພັດທະນາ -> Visual Basic ເພື່ອເປີດ Visual Basic Editor .

  • ຕໍ່ໄປ, ໃນປ່ອງຢ້ຽມປ໊ອບອັບ, ຈາກປຸ່ມ ແຖບເມນູ, ຄລິກ Insert -> ໂມດູນ .

  • ຈາກນັ້ນ, ສຳເນົາ ລະຫັດຕໍ່ໄປນີ້ ແລະ ວາງ ມັນໃສ່ໃນລະຫັດ ປ່ອງຢ້ຽມ.
2567

ຕອນນີ້ລະຫັດຂອງເຈົ້າພ້ອມແລ່ນແລ້ວ.

  • ດຽວນີ້, ກົດ F5 ເທິງເຄື່ອງຂອງເຈົ້າ. ແປ້ນພິມ ຫຼືຈາກແຖບເມນູເລືອກ Run -> ດໍາເນີນການ Sub/UserForm . ນອກນັ້ນທ່ານຍັງສາມາດຄລິກໃສ່ ໄອຄອນການດໍາເນີນການຂະຫນາດນ້ອຍ ໃນແຖບເມນູຍ່ອຍເພື່ອດໍາເນີນການ macro ໄດ້.

ຫຼັງຈາກການປະຕິບັດລະຫັດ, ເບິ່ງ gif ຂ້າງລຸ່ມນີ້ເພື່ອເບິ່ງຜົນໄດ້ຮັບ.

ດັ່ງນັ້ນ, ເຄື່ອງໝາຍ ທີ່ “ Edge” ໄດ້ຮັບໃນ ການສອບເສັງ, 67 , ຖືກດຶງຂໍ້ມູນໃນ Cell G7 .

ຄຳອະທິບາຍລະຫັດ VBA

7272

ການກໍານົດຕົວແປຂອງ Worksheet.

1737

ເກັບຮັກສາຊື່ແຜ່ນງານ. ຊື່ຂອງເອກະສານຂອງພວກເຮົາແມ່ນ "ສອງມິຕິ", ທ່ານຄວນໃຫ້ຊື່ຕາມສະເປຣດຊີດຂອງເຈົ້າ.

5471

ລະຫັດນີ້ເລືອກໄລຍະ C5:D14 ເປັນໄລຍະການຊອກຫາ. ຈາກນັ້ນຊອກຫາການຈັບຄູ່ທີ່ເກັບໄວ້ໃນເຊລ G4 ໃນໄລຍະ B5:B14 ແລະຄົ້ນຫາການຈັບຄູ່ທີ່ເກັບໄວ້ໃນເຊລ G5 ໃນໄລຍະ C4:D4 ແລະສົ່ງຜົນໄດ້ຮັບໄປຫາຕາລາງ G6 .

ອ່ານເພີ່ມເຕີມ: ວິທີໃຊ້ INDEX MATCH ທີ່ມີຫຼາຍເງື່ອນໄຂສໍາລັບຊ່ວງວັນທີ

ເງື່ອນໄຂ – 2: ນຳໃຊ້ Macro ເພື່ອຊອກຫາຄ່າ MATCH ໂດຍ INDEX ດ້ວຍຟັງຊັນທີ່ຜູ້ໃຊ້ກຳນົດເອງ (UDF)

ທ່ານສາມາດແຍກຄ່າທີ່ກົງກັນຈາກຊຸດຂໍ້ມູນດ້ວຍ ຟັງຊັນທີ່ຜູ້ໃຊ້ກຳນົດເອງ (UDF) . ຈາກຮູບຕໍ່ໄປນີ້, ສິ່ງທີ່ພວກເຮົາຈະເຮັດແມ່ນ, ພວກເຮົາຈະຜ່ານ ລະຫັດນັກຮຽນ ແລະ ເຄື່ອງໝາຍສອບເສັງ ຂອງນັກຮຽນທີ່ແນ່ນອນ ແລະຟັງຊັນຈະຖິ້ມ ຊື່ ຂອງນັກຮຽນສະເພາະນັ້ນ.

ລອງເບິ່ງວິທີການບັນລຸສິ່ງນັ້ນສໍາລັບ ຊື່ນັກຮຽນ “Finn” ດ້ວຍ VBA .

ຂັ້ນຕອນ:

  • ດັ່ງທີ່ສະແດງກ່ອນ, ເປີດ Visual Basic Editor ຈາກແຖບ ຜູ້ພັດທະນາ ແລະ ແຊກ a ໂມດູນ ໃນປ່ອງຢ້ຽມລະຫັດ.
  • ຈາກນັ້ນ, ໃນປ່ອງຢ້ຽມລະຫັດ, ສຳເນົາ ລະຫັດຕໍ່ໄປນີ້ ແລະ ວາງ ມັນ.
4807

  • ຢ່າແລ່ນ ລະຫັດນີ້, ບັນທຶກ ມັນ.
  • ດຽວນີ້, ກັບໄປຫາແຜ່ນວຽກ ທີ່ສົນໃຈ. ເລືອກຕາລາງໃດນຶ່ງ ທີ່ທ່ານຕ້ອງການເກັບຜົນໄດ້ຮັບ. ໃນກໍລະນີຂອງພວກເຮົາ, ມັນແມ່ນ Cell F5 .
  • ໃນຕາລາງນັ້ນ, ຂຽນ UDF ທ່ານໄດ້ສ້າງລະຫັດ ( MatchByIndex ) ແລະ ຜ່ານ ID ນັກຮຽນ ແລະເຄື່ອງໝາຍການສອບເສັງ ຂອງນັກຮຽນສະເພາະພາຍໃນວົງເລັບຂອງຟັງຊັນ.

ດັ່ງ ພວກເຮົາພະຍາຍາມເອົາຊື່ “ Finn” ອອກຈາກ ID (105) ແລະ Marks (84) ຂອງລາວ, ດັ່ງນັ້ນສໍາລັບກໍລະນີຂອງພວກເຮົາ ສູດຈະກາຍເປັນ,<3 =MatchByIndex(105,84)

  • ຈາກນັ້ນ, ກົດ Enter .

ເບິ່ງຮູບຕໍ່ໄປນີ້.

ໃນ Cell F5 , ພວກເຮົາໄດ້ດຶງເອົາຊື່ “ Finn”<2 ສຳເລັດແລ້ວ> ໂດຍພຽງແຕ່ຜ່ານ ID ແລະ Marks ຂອງລາວພາຍໃນຟັງຊັນທີ່ພວກເຮົາສ້າງຂຶ້ນໃນລະຫັດ VBA .

ການອະທິບາຍລະຫັດ VBA

8358

ການສ້າງຟັງຊັນໃໝ່ ແລະຖ່າຍທອດຕົວແປພາຍໃນມັນ. ທ່ານສາມາດກຳນົດຊື່ໃດນຶ່ງໃຫ້ກັບຟັງຊັນໄດ້.

6725

ແຖວຂອງພວກເຮົາເລີ່ມຕົ້ນຈາກແຖວທີ 4. ທ່ານຕ້ອງໃຫ້ໝາຍເລກແຖວທີ່ຊຸດຂໍ້ມູນຂອງທ່ານເລີ່ມຈາກ.

7133

ການກຳນົດຕົວແປ.

2665

ທຳອິດ, ກຳນົດແຜ່ນງານທີ່ຈະເຮັດວຽກນຳ. ຊື່ຂອງເອກະສານຂອງພວກເຮົາແມ່ນ "UDF", ທ່ານຄວນລະບຸຊື່ຕາມຕາຕະລາງຂອງທ່ານ. ຫຼັງຈາກນັ້ນ, ເລີ່ມການຄົ້ນຫາໃນໄລຍະ C:D ຈາກແຖວທໍາອິດທີ່ພວກເຮົາກໍານົດໄປຫາແຖວສຸດທ້າຍ. ຖ້າຄ່າທໍາອິດທີ່ພວກເຮົາຈະຜ່ານພາຍໃນຟັງຊັນຕົກຢູ່ໃນຖັນ C ແລະຖ້າຄ່າທີສອງທີ່ພວກເຮົາຈະຜ່ານພາຍໃນຟັງຊັນຕົກຢູ່ໃນຖັນ D , ມັນຈະກັບຄືນມາ. ໄດ້ຈັບຄູ່ຈາກຖັນ B . ຖ້າບໍ່ດັ່ງນັ້ນ, ອອກຈາກຟັງຊັນ, ສິ້ນສຸດຄໍາຖະແຫຼງການທັງຫມົດ, ແລະໄປແຖວຕໍ່ໄປ.

2638

ຖ້າເງື່ອນໄຂທີ່ຜ່ານມາບໍ່ສໍາເລັດໃນຂະນະທີ່ປະຕິບັດ, ຫຼັງຈາກນັ້ນຂໍ້ຄວາມ "ບໍ່ພົບຂໍ້ມູນ" ຈະຖືກສົ່ງຄືນແລະ ລະຫັດຈະອອກຈາກຟັງຊັນ.

ອ່ານເພີ່ມເຕີມ: INDEX-MATCH ທີ່ມີຫຼາຍເງື່ອນໄຂສໍາລັບຂໍ້ຄວາມບາງສ່ວນໃນ Excel (2 ວິທີ)

ເງື່ອນໄຂ – 3: ປະຕິບັດ VBA ເພື່ອສົ່ງຄືນຄ່າ MATCH ຈາກຕາຕະລາງທີ່ມີຂໍ້ມູນຫຼາຍອັນໃນ Excel

ໃນພາກນີ້, ພວກເຮົາຈະຮຽນຮູ້ວິທີ ຄືນຄ່າທີ່ກົງກັນໂດຍດັດຊະນີຈາກຕາຕະລາງ. ໃນ MsgBox ໃນ VBA Excel.

ໃຫ້ພວກເຮົາເບິ່ງວິທີການສະກັດ ເຄື່ອງຫມາຍ ຈາກຕາຕະລາງທີ່ສະແດງຢູ່ໃນຂອງພວກເຮົາ. ຊຸດຂໍ້ມູນ ( T ຊື່ສາມາດ: TableMatch ) ຂອງນັກຮຽນສະເພາະໂດຍການໃຫ້ ຊື່ ແລະ ID ພາຍໃນລະຫັດ. ສໍາລັບກໍລະນີຂອງພວກເຮົາ, ຊື່ ແລະ ID ຈະເປັນ Finn ແລະ 105 ຕາມລໍາດັບ.

ຂັ້ນຕອນ :

  • ທຳອິດ, ເປີດ ຕົວແກ້ໄຂ Visual Basic ຈາກແຖບ ຜູ້ພັດທະນາ ແລະ ແຊກ a ໂມດູນ ຢູ່ໃນປ່ອງຢ້ຽມລະຫັດ.
  • ຈາກນັ້ນ, ສຳເນົາ ລະຫັດຕໍ່ໄປນີ້ ແລະ ວາງ ມັນໃສ່ໃນປ່ອງຢ້ຽມລະຫັດ.
4278

ລະຫັດຂອງທ່ານ ຕອນນີ້ພ້ອມທີ່ຈະເປີດໃຊ້ແລ້ວ.

  • ຕໍ່ມາ, ແລ່ນ ລະຫັດນີ້ ແລະເບິ່ງຮູບຕໍ່ໄປນີ້ເພື່ອເບິ່ງວ່າເກີດຫຍັງຂຶ້ນ.

ດັ່ງ​ທີ່​ທ່ານ​ສາ​ມາດ​ເບິ່ງ​ຈາກ​ຮູບ​ຂ້າງ​ເທິງ​ນີ້​, ມີ Microsoft Excel pop-ເທິງກ່ອງຂໍ້ຄວາມສະແດງໃຫ້ທ່ານເຫັນ ເຄື່ອງໝາຍ: 84 ຂອງ ID: 105 ແລະ ຊື່: Finn ທີ່ພວກເຮົາໃຫ້ຢູ່ໃນລະຫັດ.

<7

ການອະທິບາຍລະຫັດ VBA

4766

ການກຳນົດຕົວແປ.

9307

ການຕັ້ງຊື່ແຜ່ນງານ ແລະຊື່ຕາຕະລາງພາຍໃນຕົວແປ.

2960

ການເກັບຮັກສາ ຄ່າຊອກຫາ ແລະຄໍລຳຊອກຫາເພື່ອຄົ້ນຫາ.

6408

ລະຫັດນີ້ສະແກນຈາກຈຸດເລີ່ມຕົ້ນຈົນຮອດທ້າຍຂອງຕົວໜັງສືຍ່ອຍ ແລະຖ້າມັນພົບຄວາມກົງກັນຂອງ ID ທີ່ກຳນົດໄວ້ ແລະຊື່ໃນຄໍລຳຄົ້ນຫາແລ້ວ. ເກັບຮັກສາຜົນໄດ້ຮັບແລະປິດຄໍາຖະແຫຼງການທັງຫມົດ. ນອກຈາກນັ້ນ, ອອກຈາກການຊໍ້າຄືນ ແລະໄປທີ່ສ່ວນຕໍ່ໄປຂອງລະຫັດ.

4640

ຖິ້ມຜົນໄດ້ຮັບໃນ MsgBox.

ອ່ານເພີ່ມເຕີມ: ຊອກຫາ ແລະກັບຄືນ. ຫຼາຍຄ່າລວມເຂົ້າກັນເປັນເຊລດຽວໃນ Excel

ສະຫຼຸບ

ເພື່ອສະຫຼຸບ, ບົດຄວາມນີ້ໄດ້ສະແດງໃຫ້ທ່ານເຫັນ 3 ວິທີທີ່ແຕກຕ່າງກັນກ່ຽວກັບວິທີປະຕິບັດ INDEX MATCH ໂດຍອີງໃສ່ ໃນຫຼາຍເງື່ອນໄຂ ໃນ Excel ດ້ວຍ VBA macro . ຂ້າພະເຈົ້າຫວັງວ່າບົດຄວາມນີ້ຈະເປັນປະໂຫຍດຫຼາຍສໍາລັບທ່ານ. ທ່ານສາມາດຖາມຄໍາຖາມໃດໆກ່ຽວກັບຫົວຂໍ້.

Hugh West ເປັນຄູຝຶກ Excel ທີ່ມີປະສົບການສູງແລະນັກວິເຄາະທີ່ມີປະສົບການຫຼາຍກວ່າ 10 ປີໃນອຸດສາຫະກໍາ. ລາວຈົບປະລິນຍາຕີສາຂາບັນຊີ ແລະການເງິນ ແລະປະລິນຍາໂທສາຂາບໍລິຫານທຸລະກິດ. Hugh ມີຄວາມກະຕືລືລົ້ນໃນການສອນແລະໄດ້ພັດທະນາວິທີການສອນທີ່ເປັນເອກະລັກທີ່ງ່າຍຕໍ່ການຕິດຕາມແລະເຂົ້າໃຈ. ຄວາມຮູ້ຊ່ຽວຊານຂອງລາວກ່ຽວກັບ Excel ໄດ້ຊ່ວຍໃຫ້ນັກຮຽນແລະຜູ້ຊ່ຽວຊານຫລາຍພັນຄົນໃນທົ່ວໂລກປັບປຸງທັກສະຂອງເຂົາເຈົ້າແລະດີເລີດໃນອາຊີບຂອງພວກເຂົາ. ຜ່ານ blog ຂອງລາວ, Hugh ແບ່ງປັນຄວາມຮູ້ຂອງລາວກັບໂລກ, ສະຫນອງການສອນ Excel ຟຣີແລະການຝຶກອົບຮົມອອນໄລນ໌ເພື່ອຊ່ວຍໃຫ້ບຸກຄົນແລະທຸລະກິດສາມາດບັນລຸທ່າແຮງຂອງພວກເຂົາ.