ສາລະບານ
ການປະຕິບັດ VBA ເປັນວິທີການປະສິດທິຜົນທີ່ສຸດ, ໄວທີ່ສຸດ, ແລະປອດໄພທີ່ສຸດໃນການດໍາເນີນການໃດຫນຶ່ງໃນ Excel. ໃນບົດຄວາມນີ້, ພວກເຮົາຈະສະແດງໃຫ້ທ່ານວິທີການຊອກຫາສະຕຣິງບາງຢ່າງໃນສະຕຣິງທີ່ໃຫ້ອື່ນໂດຍການນໍາໃຊ້ VBA ໃນ Excel. ສາມາດດາວໂຫຼດແມ່ແບບ Excel ແບບປະຕິບັດໄດ້ຟຣີຈາກບ່ອນນີ້.
VBA ເພື່ອຊອກຫາໃນ String.xlsm
ຟັງຊັນ InStr
Microsoft Excel ມີຟັງຊັນໃນຕົວທີ່ເອີ້ນວ່າ ຟັງຊັນ InStr ເພື່ອຊອກຫາຕໍາແໜ່ງຂອງສະຕຣິງສະເພາະໃນ String ທີ່ໃຫ້ໄວ້.
ໄວຍະກອນທົ່ວໄປ:
InStr([start], string1, string2, [compare])
ຢູ່ນີ້,
ອາກິວເມັນ | ຕ້ອງການ/ທາງເລືອກ | ນິຍາມ |
---|---|---|
ເລີ່ມຕົ້ນ | ທາງເລືອກ | ຈຸດເລີ່ມຕົ້ນຂອງການຄົ້ນຫາ.
|
string2 | ຕ້ອງການ | ສະຕຣິງທີ່ຈະຄົ້ນຫາໃນສະຕຣິງຫຼັກ . |
ປຽບທຽບ | ທາງເລືອກ | ຟັງຊັນ InStr ແມ່ນຕົວພິມນ້ອຍໃຫຍ່ຕາມຄ່າເລີ່ມຕົ້ນ. ແຕ່ຖ້າຫາກວ່າທ່ານຕ້ອງການທີ່ຈະດໍາເນີນການກໍລະນີທີ່ບໍ່ມີຄວາມຮູ້ສຶກ InStr , ຫຼັງຈາກນັ້ນທ່ານສາມາດຜ່ານ argument ທີ່ນີ້ເພື່ອປະຕິບັດການປຽບທຽບສະເພາະໃດຫນຶ່ງ. ການໂຕ້ຖຽງນີ້ສາມາດເປັນດັ່ງຕໍ່ໄປນີ້ຄ່າ,
ໂດຍຄ່າເລີ່ມຕົ້ນ, InStr ໃຊ້ vbBinaryCompare ເປັນຕົວໂຕ້ແຍ້ງປຽບທຽບ. |
8 ຕົວຢ່າງງ່າຍໆເພື່ອຊອກຫາຕຳແໜ່ງສະຕຣິງສະເພາະໃນສະຕຣິງທີ່ໃຫ້ມາໂດຍໃຊ້ VBA
ລອງມາເບິ່ງຕົວຢ່າງງ່າຍໆເພື່ອເອົາຕຳແໜ່ງຂອງສະຕຣິງໃດໜຶ່ງໃນສະຕຣິງທີ່ໃຫ້ມາໂດຍໃຊ້ VBA .
1. VBA ເພື່ອຊອກຫາຕໍາແຫນ່ງຂອງຂໍ້ຄວາມໃນ String
ຂ້າງລຸ່ມນີ້ແມ່ນຕົວຢ່າງຂອງ InStr ເພື່ອຊອກຫາ ຕຳແໜ່ງຂອງຂໍ້ຄວາມໃນສະຕຣິງໃດໜຶ່ງ.
- ກົດ Alt + F11 ເທິງແປ້ນພິມຂອງທ່ານ ຫຼືໄປທີ່ແຖບ ຜູ້ພັດທະນາ -> Visual Basic ເພື່ອເປີດ Visual Basic Editor .
- ຢູ່ໃນປ່ອງຢ້ຽມປ໊ອບອັບລະຫັດ, ຈາກແຖບເມນູ , ຄລິກ Insert -> ໂມດູນ .
- ຕອນນີ້ຢູ່ໃນປ່ອງຢ້ຽມລະຫັດ, ຂຽນໂປຣແກຣມ InStr ງ່າຍໆພາຍໃນ VBA Sub ຂັ້ນຕອນ (ເບິ່ງຂ້າງລຸ່ມນີ້).
4795
ຕອນນີ້ລະຫັດຂອງທ່ານພ້ອມທີ່ຈະດໍາເນີນການແລ້ວ.
- ກົດ F5 ໃນແປ້ນພິມຂອງທ່ານຫຼືຈາກແຖບເມນູເລືອກ Run ->; ດໍາເນີນການ Sub/UserForm . ນອກນັ້ນທ່ານຍັງສາມາດຄລິກໃສ່ ໄອຄອນຫຼິ້ນຂະຫນາດນ້ອຍ ໃນແຖບເມນູຍ່ອຍເພື່ອດໍາເນີນການ macro ໄດ້.
ທ່ານຈະເຫັນວ່າ ກ່ອງຂໍ້ຄວາມປັອບອັບຈະໃຫ້ ໝາຍເລກປະກາດຕຳແໜ່ງ ຂອງຂໍ້ຄວາມທີ່ທ່ານຕ້ອງການກວດສອບ.
ຄຳອະທິບາຍ:
ສະຕຣິງຫຼັກຂອງພວກເຮົາ, “ ຄວາມສຸກ ເປັນທາງເລືອກ ” ເປັນປະໂຫຍກຕົວອັກສອນ 21 ໂຕ (ມີຍະຫວ່າງ) ແລະພວກເຮົາຕ້ອງການຊອກຫາຕຳແໜ່ງຂອງຂໍ້ຄວາມ “ ທາງເລືອກ ” ໃນສະຕຣິງນັ້ນ. ຂໍ້ຄວາມ “ choice ” ເລີ່ມຈາກຕຳແໜ່ງທີ 16 ຂອງສາຍຫຼັກ, ດັ່ງນັ້ນພວກເຮົາຈຶ່ງໄດ້ຮັບຕົວເລກ 16 ເປັນຜົນຜະລິດຂອງພວກເຮົາໃນກ່ອງຂໍ້ຄວາມ.
2. VBA ເພື່ອຊອກຫາຂໍ້ຄວາມຈາກຕໍາແໜ່ງສະເພາະໃນສະຕຣິງ
ຕອນນີ້ໃຫ້ຊອກຫາສິ່ງທີ່ຈະເກີດຂຶ້ນຖ້າພວກເຮົາຕ້ອງການເອົາຕໍາແໜ່ງຈາກຕົວເລກທີ່ແນ່ນອນ.
- ວິທີດຽວກັນກັບ ກ່ອນ, ເປີດ Visual Basic Editor ຈາກແຖບ ຜູ້ພັດທະນາ ແລະ Insert a Module ໃນປ່ອງຢ້ຽມລະຫັດ.
- ໃນ ປ່ອງຢ້ຽມລະຫັດ, ຂຽນໂຄງການ InStr ງ່າຍດາຍທີ່ສະແດງຢູ່ຂ້າງເທິງແລະສົ່ງຄ່າໃນ argument ເລີ່ມຕົ້ນຕາມຕໍາແຫນ່ງທີ່ທ່ານຕ້ອງການທີ່ຈະນັບຂໍ້ຄວາມຂອງທ່ານຈາກ.
6125
- ຕໍ່ໄປ, ແລ່ນ ລະຫັດ.
ທ່ານຈະເຫັນວ່າກ່ອງຂໍ້ຄວາມປັອບອັບຈະ ໃຫ້ ຕົວເລກປະກາດຕຳແໜ່ງ ຂອງຂໍ້ຄວາມ ເລີ່ມຈາກຕຳແໜ່ງໃດໜຶ່ງ ທີ່ທ່ານຕ້ອງການກວດສອບ.
ຄຳອະທິບາຍ:
ດັ່ງທີ່ພວກເຮົາຮູ້ແລ້ວ (ຈາກການສົນທະນາໄລຍະ 1) ວ່າຂໍ້ຄວາມ “ ທາງເລືອກ ” ເລີ່ມຈາກຕຳແໜ່ງຂອງ 16 , ດັ່ງນັ້ນພວກເຮົາຈຶ່ງໃສ່ສອງ “ ທາງເລືອກ ” ໃນສະຕຣິງຫຼັກ ແລະຕັ້ງ 17 ເປັນຂອງພວກເຮົາ.ພາຣາມິເຕີທີ 1 ເພື່ອຂ້າມ “ ທາງເລືອກ ” ທຳອິດ. ດັ່ງນັ້ນ, ພວກເຮົາ Run macro ຂ້າງເທິງນີ້ ແລະມັນສະແດງໃຫ້ພວກເຮົາເຫັນຕຳແໜ່ງ 27 ເຊິ່ງເປັນຕົວເລກຕຳແໜ່ງຂອງ ວິນາທີ “ ທາງເລືອກ ” ໃນສະຕຣິງທີ່ໃຫ້ໄວ້.
3. VBA ເພື່ອຊອກຫາຂໍ້ຄວາມທີ່ມີຟັງຊັນ InStr ທີ່ບໍ່ອ່ອນໄຫວຕໍ່ກັບຕົວພິມນ້ອຍໃນສະຕຣິງ
ຈາກການແນະນໍາຂອງຟັງຊັນ InStr ທີ່ທ່ານຮູ້ແລ້ວວ່າໂດຍຄ່າເລີ່ມຕົ້ນ, ຟັງຊັນ InStr ແມ່ນຕົວພິມນ້ອຍໃຫຍ່. ໃຫ້ຊອກຫາມັນດ້ວຍຕົວຢ່າງ.
ເບິ່ງລະຫັດ VBA ຕໍ່ໄປນີ້, ບ່ອນທີ່ພວກເຮົາຕ້ອງການຊອກຫາຕໍາແຫນ່ງຂອງຄໍາວ່າ “ ທາງເລືອກ ” ພ້ອມກັບ ຕົວພິມໃຫຍ່ “C” ໃນສະຕຣິງ “ ຄວາມສຸກແມ່ນທາງເລືອກ ” ບ່ອນທີ່ທາງເລືອກຖືກຂຽນດ້ວຍ “c” ຂະໜາດນ້ອຍ .
- ແລ່ນ ລະຫັດ ແລະຊອກຫາ 0 ເປັນຜົນຜະລິດຂອງພວກເຮົາ.
ນັ້ນແມ່ນຍ້ອນວ່າຟັງຊັນ InStr ປະຕິບັດຕໍ່ ຕົວພິມໃຫຍ່ “C” ແລະ ຂະໜາດນ້ອຍ “c” ແຕກຕ່າງກັນ. ສະນັ້ນມັນຊອກຫາຄຳສັບ “ Choice ” ໃນສະຕຣິງ ແລະ ບໍ່ໄດ້ກົງກັນເລີຍ, ດັ່ງນັ້ນຈຶ່ງສົ່ງກັບ 0 .
- ເພື່ອເຮັດໃຫ້ຟັງຊັນ InStr case-insensitive , ໃຫ້ຕັ້ງການປຽບທຽບ argument ເປັນ vbTextCompare (ເບິ່ງຂ້າງລຸ່ມນີ້).
5171
- ແລ່ນ ລະຫັດ.
ທ່ານຈະໄດ້ຮັບ ຕຳແໜ່ງຂອງຂໍ້ຄວາມ. ຈາກສະຕຣິງ, ບໍ່ວ່າຈະເປັນຂໍ້ຄວາມທີ່ຂຽນເປັນ ຕົວພິມໃຫຍ່ ຫຼືຕົວອັກສອນນ້ອຍ .
4. VBA ເພື່ອຊອກຫາຂໍ້ຄວາມຈາກເບື້ອງຂວາຂອງສະຕຣິງ
ຈົນຮອດປັດຈຸບັນ InStr ຟັງຊັນແມ່ນພຽງແຕ່ໃຫ້ພວກເຮົາຕັ້ງຕໍາແຫນ່ງຈາກເບື້ອງຊ້າຍຂອງສະຕຣິງ. ແຕ່ຈະເຮັດແນວໃດຫາກທ່ານຕ້ອງການຊອກຫາຕຳແໜ່ງຂໍ້ຄວາມຈາກເບື້ອງຂວາຂອງສະຕຣິງ.
ຟັງຊັນ InStrRev ຊອກຫາຈາກທາງຂວາ. ຟັງຊັນ InStrRev ເຮັດວຽກຄ້າຍຄືກັນກັບຟັງຊັນ InStr ແລະມັນຈະຊອກຫາທ່ານຕຳແໜ່ງຂອງຂໍ້ຄວາມຈາກ ເບື້ອງຂວາ ຂອງສະຕຣິງ.
ເບິ່ງຕົວຢ່າງຕໍ່ໄປນີ້ເພື່ອເຂົ້າໃຈຄວາມແຕກຕ່າງ.
- ຖ້າພວກເຮົາແລ່ນລະຫັດຕໍ່ໄປນີ້ດ້ວຍຟັງຊັນ InStr ,
ມັນເຮັດໃຫ້ພວກເຮົາມີຕຳແໜ່ງ ( 16 ) ຂອງຂໍ້ຄວາມທຳອິດ “ ທາງເລືອກ ”.
- ແຕ່ຖ້າພວກເຮົາແລ່ນລະຫັດດຽວກັນກັບ InStrRev Function ແລ້ວ,
ມັນເຮັດໃຫ້ພວກເຮົາມີຕໍາແຫນ່ງ. ( 27 ) ຂອງຂໍ້ຄວາມສຸດທ້າຍ “ ທາງເລືອກ ”.
ການອ່ານທີ່ຄ້າຍຄືກັນ:
- ຊອກຫາຕໍ່ໄປໂດຍໃຊ້ VBA ໃນ Excel (2 ຕົວຢ່າງ)
- ວິທີຊອກຫາ ແລະປ່ຽນແທນການໃຊ້ VBA (11 ວິທີ)
- ຊອກຫາການຈັບຄູ່ທີ່ແນ່ນອນໂດຍໃຊ້ VBA ໃນ Excel (5 ວິທີ)
5. VBA ເພື່ອຊອກຫາຕຳແໜ່ງຂອງຕົວອັກສອນໃນສະຕຣິງ
ນອກນັ້ນທ່ານຍັງສາມາດຊອກຫາຕຳແໜ່ງຂອງຕົວອັກສອນໃດນຶ່ງໃນສະຕຣິງໄດ້ໃນແບບດຽວກັນທີ່ທ່ານພົບຂໍ້ຄວາມ.
- ສຳເນົາ ລະຫັດຕໍ່ໄປນີ້ເຂົ້າໄປໃນ VBA window code
7472
- ແລະ ແລ່ນ macro.
“ e ” ທຳອິດໃນສະຕຣິງທີ່ໃຫ້ຂອງພວກເຮົາແມ່ນຢູ່ທີ່ຕົວເລກ 7 ຕໍາແໜ່ງ.
6. VBA ເພື່ອຊອກຫາສະຕຣິງຍ່ອຍໃນສະຕຣິງ
ນີ້ພວກເຮົາຈະຮຽນຮູ້ວິທີຊອກຫາວ່າສະຕຣິງໃດນຶ່ງມີ ສະຕຣິງຍ່ອຍ ຫຼືບໍ່.
ເພື່ອໃຫ້ໄດ້ນັ້ນ, ພວກເຮົາມີ ເພື່ອດໍາເນີນການ IF Statement ໃນລະຫັດຂອງພວກເຮົາ.
- ວິທີດຽວກັນ, ເປີດ Visual Basic Editor ຈາກແຖບ ຜູ້ພັດທະນາ ແລະ ໃສ່ a ໂມດູນ ໃນປ່ອງຢ້ຽມລະຫັດ. ຕອນນີ້ລະຫັດພ້ອມເປີດໃຊ້ແລ້ວ.
- ແລ່ນ ມາໂຄຣ.
ຖ້າ ສະຕຣິງຂອງທ່ານມີສະຕຣິງຍ່ອຍ ທ່ານຈະໄດ້ຮັບ ການຈັບຄູ່ທີ່ພົບ , ຖ້າບໍ່ດັ່ງນັ້ນ, ມັນຈະສົ່ງຄືນບໍ່ພົບ. ໃນຕົວຢ່າງຂອງພວກເຮົາ, ພວກເຮົາຕ້ອງການຊອກຫາວ່າສາຍຫຼັກຂອງພວກເຮົາ “ ຄວາມສຸກເປັນທາງເລືອກ ” ມີຄໍາວ່າ “ ທາງເລືອກ ” ຫຼື ບໍ່. ດັ່ງທີ່ມັນເກີດຂຶ້ນ, ພວກເຮົາໄດ້ຮັບຜົນການແຂ່ງຂັນ ພົບ .
7. VBA ເພື່ອຊອກຫາ String ໃນຊ່ວງເຊລ
ເຈົ້າສາມາດຄົ້ນຫາຂໍ້ຄວາມໃດນຶ່ງໃນຂອບເຂດເຊລຂອງສະຕຣິງ ແລະສົ່ງຄືນສະຕຣິງທີ່ແນ່ນອນໄດ້.
ເບິ່ງຕົວຢ່າງຕໍ່ໄປນີ້ບ່ອນທີ່ພວກເຮົາຈະ ຊອກຫາ “ ດຣ. ” ແລະ ເມື່ອມີການແຂ່ງຂັນກັນ ມັນຈະກັບຄືນມາ “ ທ່ານໝໍ ”.
- ລຸ່ມນີ້ແມ່ນລະຫັດເພື່ອເອົາຜົນໄດ້ຮັບທີ່ໄດ້ກ່າວມາຂ້າງເທິງ,
3819
- ດໍາເນີນການ the ລະຫັດແລະຜົນໄດ້ຮັບແມ່ນສະແດງໃຫ້ເຫັນຂ້າງລຸ່ມນີ້
- ທ່ານສາມາດດັດແປງ macro ຕາມຄວາມຕ້ອງການຂອງທ່ານ. ສໍາລັບຕົວຢ່າງ, ຖ້າທ່ານຕ້ອງການເພື່ອຊອກຫາ “ Prof. ” ໃນຕາລາງໃດນຶ່ງຂອງສະຕຣິງ, ແລະໄດ້ຮັບ “ Professor ” ເປັນຜົນຕອບແທນ, ຈາກນັ້ນພຽງແຕ່ຜ່ານ “<1. Prof. ” ເປັນຄ່າແທນ “ Dr .” ໃນແຖວທີ 4 ຂອງມະຫາພາກ ແລະ “ ອາຈານ ” ແທນ “ ທ່ານໝໍ ” ໃນແຖວທີ 5 ຂອງມະຫາພາກ ແລະກຳນົດຄ່າ ຕົວເລກຊ່ວງຕາລາງຕາມຄວາມເໝາະສົມ.
8. VBA ເພື່ອຊອກຫາ String ໃນ Cell
ນອກນັ້ນທ່ານຍັງສາມາດ ຊອກຫາຂໍ້ຄວາມໃດນຶ່ງໃນເຊລດຽວຂອງ String ແລະສົ່ງຄືນ String ທີ່ແນ່ນອນໄດ້.
- ສຳເນົາລະຫັດຕໍ່ໄປນີ້ແລ້ວວາງໃສ່ໜ້າຕ່າງລະຫັດ.
7233
ມັນຈະຊອກຫາ “ ດຣ. ” ໃນ Cell B5 ແລະຖ້າມັນພົບກົງກັນແລ້ວສົ່ງກັບ “ Doctor ” ໃນ Cell C5 .
- ທ່ານສາມາດປັບປຸງແກ້ໄຂມະຫາພາກຕາມຄວາມຕ້ອງການຂອງທ່ານ. ຕົວຢ່າງ: ຖ້າທ່ານຕ້ອງການຊອກຫາ “ Prof. ” ຢູ່ໃນຕາລາງໃດນຶ່ງຂອງສະຕຣິງ, ແລະເອົາ “ ອາຈານ ” ເປັນຜົນຕອບແທນ, ຈາກນັ້ນພຽງແຕ່ຜ່ານ “ Prof. ” ເປັນຄ່າແທນ “ Dr .” ໃນແຖວທີ 2 ຂອງມະຫາພາກ ແລະ “ ອາຈານ ” ແທນ “ ທ່ານໝໍ ” ໃນແຖວທີ 3 ຂອງມະຫາພາກ ແລະກຳນົດຄ່າ ຈໍານວນການອ້າງອິງຕາລາງຕາມຄວາມເຫມາະສົມ.
ບົດສະຫຼຸບ
ບົດຄວາມນີ້ໄດ້ສະແດງໃຫ້ທ່ານເຫັນວິທີຊອກຫາຂໍ້ຄວາມບາງຢ່າງໃນສະຕຣິງໃນ Excel ໂດຍໃຊ້ VBA macro. ຂ້ອຍຫວັງວ່າບົດຄວາມນີ້ຈະເປັນປະໂຫຍດຫຼາຍຕໍ່ເຈົ້າ. ຮູ້ສຶກບໍ່ເສຍຄ່າທີ່ຈະຖາມຄໍາຖາມໃດໆກ່ຽວກັບຫົວຂໍ້.