ແລະສຸດທ້າຍ, ຖ້າອັນໃດນຶ່ງຂອງ string1 ຫຼື string2 ແມ່ນ Null , ສົ່ງຄືນຄວາມຜິດພາດ. ໃນພາກນີ້, ພວກເຮົາຈະເຫັນສາມຕົວຢ່າງງ່າຍໆຂອງການໃຊ້ຟັງຊັນ VBA InStr ໃນ Excel. ມາເບິ່ງຕົວຢ່າງທຳອິດຂອງຟັງຊັນ InStr ໃນລະຫັດ VBA. 1. ການຕັດສິນໃຈວ່າທີ່ຢູ່ເປັນທີ່ຢູ່ອີເມວຫຼືບໍ່ ໂດຍການນໍາໃຊ້ VBA InStr Function
ຢູ່ທີ່ນີ້, ພວກເຮົາໄດ້ເອົາຊຸດຂໍ້ມູນທີ່ມີທີ່ຢູ່ຕິດຕໍ່ຂອງລູກຄ້າຈໍານວນຫນຶ່ງ. ເປົ້າຫມາຍຂອງພວກເຮົາຢູ່ທີ່ນີ້ແມ່ນເພື່ອກໍານົດວ່າທີ່ຢູ່ແມ່ນທີ່ຢູ່ອີເມວຫຼືບໍ່.
ຕອນນີ້ພວກເຮົາຈະພັດທະນາລະຫັດ VBA ໂດຍໃຊ້ຟັງຊັນ InStr ເພື່ອກໍານົດ. ບໍ່ວ່າຈະເປັນທີ່ຢູ່ອີເມວຫຼືບໍ່. ເພື່ອເຮັດສິ່ງນີ້, ປະຕິບັດຕາມຂັ້ນຕອນຂ້າງລຸ່ມນີ້.
ຂັ້ນຕອນ:
- ໃນຕອນເລີ່ມຕົ້ນ, ໄປທີ່ແຖບ ຜູ້ພັດທະນາ ແລະເລືອກ Visual Basic (ຫຼືກົດ Alt+F11) ເພື່ອເປີດ VBA ປ່ອງຢ້ຽມ.
- ຈາກນັ້ນ, ໃນປ່ອງຢ້ຽມ VBA , ໃຫ້ໄປທີ່ ແຊກ > ໂມດູນ .
- ຫຼັງຈາກນັ້ນ, ໃນໂມດູນ, ວາງລະຫັດຕໍ່ໄປນີ້:
2496
<27
- ນອກຈາກນັ້ນ, ພວກເຮົາໄດ້ສ້າງຟັງຊັນທີ່ເອີ້ນວ່າ ການຕັດສິນໃຈ . ມັນຕັດສິນໃຈວ່າທີ່ຢູ່ເປັນທີ່ຢູ່ອີເມວຫຼືບໍ່. ມາໃຊ້ຟັງຊັນກັບຊຸດຂໍ້ມູນທີ່ເຮົາມີ.
- ໃນເຊລ C5 , ໃຫ້ຂຽນສູດຄຳນວນຕໍ່ໄປນີ້ ແລ້ວຕື່ມຂໍ້ມູນສ່ວນທີ່ເຫຼືອຂອງເຊວອັດຕະໂນມັດໂດຍໃຊ້ Fill Handle .
=DECISION(B5)
- ດັ່ງທີ່ພວກເຮົາສາມາດເຫັນໄດ້, ພວກເຮົາໄດ້ລະບຸແຕ່ລະທີ່ຢູ່ບໍ່ວ່າຈະເປັນທີ່ຢູ່ອີເມວ ຫຼືບໍ່.
🎓 ລະຫັດເຮັດວຽກແນວໃດ?
- Function DECISION(string1 As String)
ທຳອິດ, ອັນນີ້ສ້າງຟັງຊັນທີ່ເອີ້ນວ່າ DECISION ດ້ວຍ string argument ຊື່ວ່າ string1 .
ມັນປະກາດຕົວແປຈຳນວນເຕັມທີ່ມີຊື່ວ່າ Position .
- Position = InStr(1, string1, “@”, 0)
ນີ້ກຳນົດຄ່າຂອງ ຕຳແໜ່ງ ຕົວແປເປັນຜົນອອກຂອງຟັງຊັນ InStr ພ້ອມກັບອາກິວເມັນ 1, string1, “@” ແລະ 0 . ໃນສັ້ນ, ນີ້ກໍານົດຕໍາແຫນ່ງຢູ່ໃນທີ່ຢູ່ທີ່ມີ “@” .
- ຖ້າຕໍາແຫນ່ງ = 0 ຫຼັງຈາກນັ້ນ DECISION = “ບໍ່ແມ່ນອີເມວ”
ມັນມອບໝາຍຜົນໄດ້ຮັບຂອງ ການຕັດສິນໃຈ ຟັງຊັນເປັນ “ບໍ່ແມ່ນອີເມວ” , ຖ້າ ຕຳແໜ່ງ ຕົວແປແມ່ນ 0 , ນັ້ນໝາຍຄວາມວ່າ, ບໍ່ມີ “@” ຢູ່ໃນທີ່ຢູ່.
(ຈື່ໄວ້ຖ້າບໍ່ພົບສະຕຣິງໃດນຶ່ງຢູ່ໃນສະຕຣິງທີ່ໃຫ້ໄວ້, InStr function returns 0 ).
ນີ້ກຳນົດໃຫ້ ຜົນຜະລິດຂອງ ການຕັດສິນໃຈ ຟັງຊັນເປັນ “ອີເມລ” ຖ້າມີ “@” ໃນທີ່ຢູ່. ດັ່ງນັ້ນທີ່ຢູ່ທີ່ມີ “@” ຖືກຈັດປະເພດເປັນ ອີເມລ໌ , ແລະສ່ວນທີ່ເຫຼືອແມ່ນຈັດປະເພດເປັນ “ບໍ່ແມ່ນອີເມວ” .
ການອ່ານທີ່ຄ້າຍຄືກັນ
- ວິທີໃຊ້ຟັງຊັນ VBA UCASE ໃນ Excel (4 ຕົວຢ່າງ)
- ໃຊ້ຟັງຊັນ MsgBox ໃນ Excel VBA (ຂໍ້ແນະນຳທີ່ສົມບູນ)
- ວິທີໃຊ້ຟັງຊັນ VBA SPLIT ໃນ Excel (5 ຕົວຢ່າງ)
- ໃຊ້ຟັງຊັນ LCase ໃນ VBA ໃນ Excel (ດ້ວຍ 4 ຕົວຢ່າງ)
- ວິທີໃຊ້ Fix Function ໃນ Excel VBA (4 ຕົວຢ່າງ)
2. ການນໍາໃຊ້ຟັງຊັນ VBA InStr ສໍາລັບ ການສະກັດອອກສ່ວນຂະຫຍາຍຂອງທີ່ຢູ່ອີເມວຈໍານວນຫນຶ່ງ
ຢູ່ທີ່ນີ້, ພວກເຮົາມີລາຍຊື່ຂອງທີ່ຢູ່ອີເມວຂອງລູກຄ້າຈໍານວນຫນຶ່ງ. ຄັ້ງນີ້ພວກເຮົາຈະແຍກສ່ວນຂະຫຍາຍຂອງທີ່ຢູ່ອີເມວເຊັ່ນວ່າພວກເຂົາມີ gmail.com ຫຼື yahoo.com .
. ເພື່ອເຮັດສິ່ງນັ້ນ, ໃຫ້ປະຕິບັດຕາມຂັ້ນຕອນຂ້າງລຸ່ມນີ້.
ຂັ້ນຕອນ:
- ເພື່ອເລີ່ມຕົ້ນດ້ວຍວິທີທີ່ຜ່ານມາ, ເປີດ VBA<2 ໃໝ່> module ແລະວາງລະຫັດຕໍ່ໄປນີ້ໃນປ່ອງຢ້ຽມ. ສ່ວນຂະຫຍາຍ . ມັນສະກັດສ່ວນຂະຫຍາຍຂອງທີ່ຢູ່ອີເມວໃດໆ.
- ນອກນັ້ນ, ໃຫ້ໃຊ້ຟັງຊັນນີ້ກັບຊຸດຂໍ້ມູນທີ່ພວກເຮົາມີ. ທຳອິດ, ໃຫ້ໃສ່ສູດນີ້ໃສ່ຕາລາງ C5 ແລະຫຼັງຈາກນັ້ນໃຫ້ຄລິກສອງເທື່ອໃສ່ Fill Handle .
=EXTENSION(B5)
- ສຸດທ້າຍ, ພວກເຮົາສາມາດເຫັນໄດ້ວ່າພວກເຮົາໄດ້ແຍກສ່ວນຂະຫຍາຍຂອງອີເມວທັງໝົດສຳເລັດແລ້ວ.
🎓 ລະຫັດເຮັດວຽກແນວໃດ?
- Function EXTENSION(Email As String)
ອັນນີ້ສ້າງຟັງຊັນໃໝ່ທີ່ເອີ້ນວ່າ EXTENSION , ພ້ອມກັບ string argument ຊື່ວ່າ Email .
ສ່ວນນີ້ປະກາດຕົວແປຈຳນວນເຕັມທີ່ມີຊື່ວ່າ Position .
- Position = InStr(1, Email, “@”, 0)
ນີ້ກຳນົດຄ່າຂອງ Position variable as output of the InStr function with the arguments 1, Email, “@” and 0 . ໃນສັ້ນ, ນີ້ກຳນົດຕຳແໜ່ງໃນ ອີເມລ໌ ບ່ອນທີ່ມີ “@” .
- EXTENSION = ສິດ(ອີເມລ, (Len (ອີເມລ) – ຕຳແໜ່ງ))
ສ່ວນນີ້ກຳນົດຜົນອອກມາຂອງຟັງຊັນ EXTENSION ເປັນຕົວລະຄອນຫຼັງສັນຍາລັກ “@” . ນີ້ແມ່ນສ່ວນຂະຫຍາຍທີ່ຕ້ອງການຂອງ ອີເມວ .
3. ການສະກັດເອົານາມສະກຸນ ຫຼືນາມສະກຸນອອກຈາກຊື່ ໂດຍການໃຊ້ຟັງຊັນ VBA InStr
ສຸດທ້າຍ, ພວກເຮົາຈະປະຕິບັດໜ້າທີ່ທີ່ແຕກຕ່າງກັນຢ່າງເປັນເອກະລັກ. ເວລານີ້ພວກເຮົາມີຊື່ຂອງພະນັກງານຈໍານວນຫນຶ່ງຂອງບໍລິສັດ. ແລະພວກເຮົາຈະພະຍາຍາມສ້າງຟັງຊັນເພື່ອແຍກຊື່ ຫຼືນາມສະກຸນຂອງພະນັກງານ.
ເພື່ອເຮັດແນວນັ້ນ, ໃຫ້ເຮັດຕາມຂັ້ນຕອນຂ້າງລຸ່ມນີ້.
ຂັ້ນຕອນ:
- ທຳອິດ, ຄ້າຍກັບ ວິທີ 1 , ວາງລະຫັດລຸ່ມນີ້ໃນໂມດູນໃໝ່ໃນໜ້າຕ່າງ VBA.
5464
- ຢູ່ນີ້, ພວກເຮົາໄດ້ສ້າງຟັງຊັນທີ່ເອີ້ນວ່າ SHORTNAME ທີ່ແຍກຊື່ ຫຼືນາມສະກຸນອອກຈາກຊື່. ມາໃຊ້ສູດນີ້ໃສ່ຊຸດຂໍ້ມູນຂອງພວກເຮົາ.
- ທຳອິດ, ເພື່ອແຍກຊື່ອອກ, ໃຫ້ຂຽນສູດຄຳນວນລຸ່ມນີ້ໃນຕາລາງ C5 .
<7 =SHORTNAME(B5,-1)
- ສຸດທ້າຍ, ເພື່ອແຍກນາມສະກຸນ, ພວກເຮົາຂຽນສູດຄຳນວນຕໍ່ໄປນີ້ໃນ D5 :
=SHORTNAME(B5,1)
- ຫຼັງຈາກນັ້ນ, ຖ້າພວກເຮົາຕື່ມຂໍ້ມູນສ່ວນທີ່ເຫຼືອຂອງເຊວໂດຍອັດຕະໂນມັດດ້ວຍ Fill Handler , ພວກເຮົາຈະເຫັນຜົນທີ່ຕ້ອງການຂອງພວກເຮົາ.
🎓 ລະຫັດເຮັດວຽກແນວໃດ?
- ຟັງຊັນ SHORTNAME(ຊື່ເປັນ String, First_or_Last As Integer)
ມັນສ້າງຟັງຊັນໃໝ່ທີ່ເອີ້ນວ່າ SHORTNAME ກັບນຶ່ງ String argument ທີ່ມີຊື່ວ່າ Name ແລະ Integer Argument ນຶ່ງຊື່ First_or_Last .
ສ່ວນນີ້ປະກາດຕົວແປຈຳນວນເຕັມໃໝ່ທີ່ມີຊື່ວ່າ Break .
- Break = InStr(1, Name, ” “, 0)
ມັນກຳນົດຄ່າຂອງຕົວແປ Break ເປັນຜົນຜະລິດຂອງຟັງຊັນ InStr ກັບ arguments 1, ຊື່, “ ” ແລະ 0 . ໃນສັ້ນ, ນີ້ກຳນົດຕຳແໜ່ງໃນ ຊື່ ບ່ອນທີ່ມີ ຍະຫວ່າງ (“ ”).
- ຖ້າ First_or_Last = -1 ຫຼັງຈາກນັ້ນ. SHORTNAME = ຊ້າຍ(ຊື່, ແຍກ – 1)
ແຖວນີ້ມອບໝາຍຜົນໄດ້ຮັບຂອງຟັງຊັນ SHORTNAME ເປັນຕົວອັກສອນກ່ອນໜ້າ ຍະຫວ່າງ , ຖ້າອາກິວເມັນ First_or_Last ແມ່ນ -1. ນີ້ແມ່ນຊື່ທຳອິດ.
- SHORTNAME = ຂວາ(ຊື່, ເລນ(ຊື່) – ແຍກ)
ສ່ວນນີ້ກຳນົດຜົນຜະລິດຂອງ SHORTNAME ຟັງຊັນເປັນຕົວອັກສອນຫຼັງຈາກ space , ຖ້າອາກິວເມັນ First_or_Last ແມ່ນ 1. ນີ້ແມ່ນນາມສະກຸນ.
ບົດສະຫຼຸບ
ດ້ວຍວິທີນີ້, ທ່ານສາມາດຂຽນລະຫັດ VBA ດ້ວຍຟັງຊັນ InStr ເຊິ່ງຊອກຫາຕຳແໜ່ງຂອງສະຕຣິງສະເພາະພາຍໃນອັນອື່ນທີ່ໃຫ້ໄວ້. string, ແລະຫຼັງຈາກນັ້ນທ່ານສາມາດສ້າງຫນ້າທີ່ຂອງທ່ານເອງສໍາລັບການນໍາໃຊ້ທີ່ຫລາກຫລາຍ. ນອກຈາກນັ້ນ, ຖ້າທ່ານມີຄໍາຖາມໃດໆ, ກະລຸນາຖາມພວກເຮົາ.