ສາລະບານ
ກຳລັງພະຍາຍາມສ້າງຄຳຖະແຫຼງ IF ດ້ວຍຕົວໜັງສືແທນ, ແຕ່ມັນລົ້ມເຫລວທຸກຄັ້ງບໍ? ບັນຫາບໍ່ໄດ້ຢູ່ໃນສູດຂອງທ່ານແຕ່ຢູ່ໃນຫນ້າທີ່ຂອງມັນເອງ - Excel IF ບໍ່ສະຫນັບສະຫນູນຕົວອັກສອນ wildcard. ຢ່າງໃດກໍ່ຕາມ, ມີວິທີທີ່ຈະເຮັດໃຫ້ມັນເຮັດວຽກສໍາລັບການຈັບຄູ່ຂໍ້ຄວາມບາງສ່ວນ, ແລະການສອນນີ້ຈະສອນທ່ານກ່ຽວກັບວິທີ.
ທຸກຄັ້ງທີ່ທ່ານຕ້ອງການທີ່ຈະປະຕິບັດການຈັບຄູ່ບາງສ່ວນ ຫຼື fuzzy ໃນ Excel, ການແກ້ໄຂທີ່ຈະແຈ້ງທີ່ສຸດແມ່ນ. ການນໍາໃຊ້ຕົວແທນ. ແຕ່ຈະເຮັດແນວໃດຖ້າຟັງຊັນສະເພາະທີ່ທ່ານຕ້ອງການໃຊ້ບໍ່ຮອງຮັບຕົວອັກສອນແທນ? ແຕ່ຫນ້າເສຍດາຍ, Excel IF ແມ່ນຫນຶ່ງໃນຫນ້າທີ່ດັ່ງກ່າວ. ນີ້ແມ່ນຄວາມຜິດຫວັງໂດຍສະເພາະແມ່ນການພິຈາລະນາວ່າຫນ້າທີ່ "ເງື່ອນໄຂ" ອື່ນໆເຊັ່ນ COUNTIF, SUMIF, ແລະ AVERAGEIFS ເຮັດວຽກກັບ wildcards ຢ່າງສົມບູນແບບໄດ້ດີ.
ໂຊກດີ, ມັນບໍ່ແມ່ນອຸປະສັກທີ່ສາມາດຢຸດຜູ້ໃຊ້ Excel ສ້າງສັນ :) ໂດຍການລວມ IF ດ້ວຍຟັງຊັນອື່ນໆ, ທ່ານສາມາດບັງຄັບໃຫ້ມັນປະເມີນການຈັບຄູ່ບາງສ່ວນ ແລະໄດ້ທາງເລືອກທີ່ດີໃຫ້ກັບສູດຄຳນວນຂອງ Excel IF wildcard.
ເປັນຫຍັງຟັງຊັນ Excel IF ກັບ wildcard ບໍ່ເຮັດວຽກ
ໃນຕາຕະລາງຕົວຢ່າງຂ້າງລຸ່ມນີ້, ສົມມຸດວ່າທ່ານຕ້ອງການກວດເບິ່ງວ່າ IDs ໃນຖັນທໍາອິດມີຕົວອັກສອນ "A". ຖ້າພົບ - ສະແດງ "ແມ່ນ" ໃນຖັນ B, ຖ້າບໍ່ແມ່ນ - ສະແດງ "ບໍ່".
ເບິ່ງຄືວ່າການລວມເອົາຂໍ້ຄວາມແທນຕົວຫນັງສືຢູ່ໃນການທົດສອບຢ່າງມີເຫດຜົນຈະເປັນການແກ້ໄຂງ່າຍ:
=IF(A2="*a*","Yes", "No")
ແຕ່ໜ້າເສຍໃຈທີ່ມັນບໍ່ໄດ້ຜົນ. ສູດຄຳນວນໃຫ້ຜົນເປັນ "ບໍ່" ສຳລັບເຊລທັງໝົດ, ແມ່ນແຕ່ອັນທີ່ມີ "A":
ເປັນຫຍັງຄືຖະແຫຼງການ IF ທີ່ເປັນຕົວແທນບໍ່ສຳເລັດ? ຈາກການປະກົດຕົວທັງໝົດ, Excel ບໍ່ໄດ້ຮັບຮູ້ຕົວອັກສອນແທນທີ່ນຳໃຊ້ດ້ວຍເຄື່ອງໝາຍເທົ່າທຽມກັນ ຫຼືຕົວປະຕິບັດການຕາມເຫດຜົນອື່ນໆ. ກວດເບິ່ງລາຍການຟັງຊັນທີ່ສະຫນັບສະຫນູນ wildcards ຢ່າງໃກ້ຊິດ, ທ່ານຈະສັງເກດເຫັນວ່າ syntax ຂອງພວກມັນສົມມຸດວ່າຂໍ້ຄວາມ wildcard ຈະປາກົດໂດຍກົງໃນການໂຕ້ຖຽງເຊັ່ນນີ້:
=COUNTIF(A2:A10, "*a*")
Excel IF ມີຂໍ້ຄວາມບາງສ່ວນ
ຕອນນີ້ເຈົ້າຮູ້ເຫດຜົນວ່າເປັນຫຍັງສູດຄຳແທນ IF ລົ້ມເຫລວ, ໃຫ້ເຮົາລອງຄິດຫາວິທີເຮັດໃຫ້ມັນເຮັດວຽກໄດ້. ສໍາລັບການນີ້, ພວກເຮົາຈະພຽງແຕ່ຝັງຟັງຊັນທີ່ຍອມຮັບ wildcards ໃນການທົດສອບເຫດຜົນຂອງ IF, ຄືຟັງຊັນ COUNTIF:
IF(COUNTIF( cell, "* ຂໍ້ຄວາມ* "), value_if_true, value_if_false)ດ້ວຍວິທີນີ້, IF ບໍ່ມີບັນຫາກັບຄວາມເຂົ້າໃຈຕົວພິມໃຫຍ່ ແລະລະບຸເຊລທີ່ມີທັງ "A" ຫຼື "a" ໂດຍບໍ່ມີຂໍ້ບົກພ່ອງ (ເນື່ອງຈາກ COUNTIF ບໍ່ແມ່ນຕົວພິມນ້ອຍໃຫຍ່):
=IF(COUNTIF(A2, "*a*"),"Yes", "No")
ສູດນີ້ໄປຫາ B2, ຫຼືເຊລອື່ນໆໃນແຖວທີ 2, ແລະຈາກນັ້ນທ່ານສາມາດລາກມັນລົງໄປຫາຫຼາຍເຊລເທົ່າທີ່ຕ້ອງການ:
ການແກ້ໄຂບັນຫານີ້ຍັງສາມາດຖືກໃຊ້ເພື່ອຊອກຫາ ສະຕຣິງຂອງຮູບແບບສະເພາະ . ສົມມຸດວ່າພຽງແຕ່ IDs ທີ່ປະກອບດ້ວຍ 2 ກຸ່ມຂອງ 2 ຕົວອັກສອນທີ່ແຍກດ້ວຍຍັບຍັ້ງແມ່ນຖືກຕ້ອງ, ທ່ານສາມາດນໍາໃຊ້ "??-???" ສະຕຣິງ wildcard ເພື່ອລະບຸພວກມັນ:
=IF(COUNTIF(A2, "??-??"), "Valid", "")
ສູດນີ້ເຮັດວຽກແນວໃດ:
ສຳລັບການທົດສອບເຫດຜົນຂອງ IF, ພວກເຮົາໃຊ້ຟັງຊັນ COUNTIF ທີ່ນັບຈໍານວນຕາລາງທີ່ກົງກັບ wildcard ທີ່ລະບຸໄວ້ສາຍ. ເນື່ອງຈາກຂອບເຂດເງື່ອນໄຂແມ່ນຕາລາງດຽວ (A2), ຜົນໄດ້ຮັບແມ່ນ 1 ສະເໝີ (ພົບການຈັບຄູ່) ຫຼື 0 (ບໍ່ພົບການຈັບຄູ່). ເນື່ອງຈາກ 1 ເທົ່າກັບ TRUE ແລະ 0 ເປັນ FALSE, ສູດຄຳນວນຈະສົ່ງຄືນ "ຖືກຕ້ອງ" (value_if_true) ເມື່ອການນັບເປັນ 1 ແລະສະຕຣິງຫວ່າງເປົ່າ (value_if_false) ເມື່ອການນັບແມ່ນ 0.
IF ISNUMBER SEARCH ສູດສຳລັບບາງສ່ວນ. ການຈັບຄູ່
ອີກວິທີໜຶ່ງທີ່ຈະບັງຄັບໃຫ້ Excel IF ເຮັດວຽກສຳລັບການຈັບຄູ່ຂໍ້ຄວາມບາງສ່ວນແມ່ນການລວມເອົາຟັງຊັນ FIND ຫຼື SEARCH ໃນການທົດສອບຢ່າງມີເຫດຜົນ. ຄວາມແຕກຕ່າງແມ່ນວ່າ FIND ແມ່ນຕົວພິມນ້ອຍໃຫຍ່ໃນຂະນະ SEARCH ບໍ່ແມ່ນ.
ດັ່ງນັ້ນ, ຂຶ້ນກັບວ່າທ່ານຕ້ອງການປະຕິບັດຕົວພິມນ້ອຍ ແລະ ຕົວພິມໃຫຍ່ເປັນຕົວອັກສອນດຽວກັນ ຫຼື ແຕກຕ່າງກັນ, ຫນຶ່ງໃນສູດເຫຼົ່ານີ້ຈະໃຊ້ໄດ້ຜົນ:<3 ສູດ
Case-insensitive ສໍາລັບການຈັບຄູ່ບາງສ່ວນ:
IF(ISNUMBER(SEARCH(" text ", cell )), value_if_true, value_if_false ) ສູດຕົວພິມນ້ອຍໃຫຍ່ ສໍາລັບການຈັບຄູ່ບາງສ່ວນ:
IF(ISNUMBER(FIND(" text ", cell )), value_if_true, value_if_false )ເນື່ອງຈາກທັງສອງຟັງຊັນຖືກອອກແບບເພື່ອປະຕິບັດການຈັບຄູ່ປະເພດ "ເຊລມີ", ຕົວແທນບໍ່ຈໍາເປັນໃນກໍລະນີນີ້.
ຕົວຢ່າງ, ເພື່ອກວດຫາ ID ທີ່ມີ "A" ຫຼື "a" , ສູດແມ່ນ:
=IF(ISNUMBER(SEARCH("A", A2)), "Yes", "No")
ເພື່ອຄົ້ນຫາຕົວພິມໃຫຍ່ "A" ແລະບໍ່ສົນໃຈ "a", ສູດແມ່ນ:
=IF(ISNUMBER(FIND("A", A2)), "Yes", "No")
ໃນ B6 ໃນພາບຫນ້າຈໍຂ້າງລຸ່ມນີ້, ທ່ານສາມາດສັງເກດເຫັນຄວາມແຕກຕ່າງຂອງຜົນໄດ້ຮັບ:
ວິທີສູດນີ້ເຮັດວຽກ:
ຢູ່ທີ່ ຫົວໃຈຂອງສູດ, ມີການລວມກັນຂອງ ISNUMBER ແລະ SEARCH (ຫຼື FIND):
ISNUMBER(SEARCH("A", A2))
ຟັງຊັນ SEARCH ຊອກຫາຂໍ້ຄວາມທີ່ລະບຸ ("A" ໃນຕົວຢ່າງນີ້) ແລະສົ່ງຄືນຕໍາແຫນ່ງຂອງມັນພາຍໃນ. ສາຍໃນ A2. ຖ້າບໍ່ພົບຂໍ້ຄວາມ, ຂໍ້ຜິດພາດ #VALUE ຈະຖືກສົ່ງຄືນ. ເນື່ອງຈາກທັງ SEARCH ແລະ FIND ຖືກອອກແບບມາເພື່ອປະຕິບັດການຈັບຄູ່ປະເພດ "ເຊລປະກອບມີ", ຕົວແທນບໍ່ຈໍາເປັນແທ້ໆໃນກໍລະນີນີ້.
ຟັງຊັນ ISNUMBER ຈະປ່ຽນຕົວເລກເປັນ TRUE ແລະຄ່າອື່ນໆລວມທັງຄວາມຜິດພາດເປັນ FALSE. . ຄ່າຢ່າງມີເຫດຜົນໄປໂດຍກົງກັບການທົດສອບຢ່າງມີເຫດຜົນຂອງ IF. ໃນກໍລະນີຂອງພວກເຮົາ, A2 ມີ "A", ດັ່ງນັ້ນ ISNUMBER ໃຫ້ຜົນຕອບແທນ TRUE:
IF(TRUE, "Yes", "No")
ດັ່ງນີ້, IF ຕອບຄ່າທີ່ກຳນົດໄວ້ສຳລັບອາກິວເມັນ value_if_true , ເຊິ່ງແມ່ນ "ແມ່ນ".
Excel IF OR ຂໍ້ຄວາມທີ່ມີ wildcards
ຕ້ອງການລະບຸເຊລທີ່ມີໜຶ່ງໃນສະຕຣິງຂໍ້ຄວາມແທນບໍ? ໃນກໍລະນີນີ້, ທ່ານສາມາດປະສົມຄໍາບັນຍາຍ IF OR ຄລາສສິກກັບ COUNTIF ຫຼື ISNUMBER ສູດການຄົ້ນຫາທີ່ໄດ້ປຶກສາຫາລືຂ້າງເທິງ.
ຕົວຢ່າງ, ເພື່ອຊອກຫາ "aa" OR "bb" ໃນ A2 ບໍ່ສົນກັບຕົວອັກສອນແລະກັບຄືນໄປບ່ອນ ". ແມ່ນແລ້ວ" ຖ້າພົບອັນໃດນຶ່ງ, ໃຫ້ໃຊ້ນຶ່ງໃນສູດຄຳນວນເຫຼົ່ານີ້:
=IF(OR(ISNUMBER(SEARCH("aa", A2)), ISNUMBER(SEARCH("bb", A2))), "Yes", "")
ຫຼື
=IF(OR(COUNTIF(A2, "*aa*"), COUNTIF(A2, "*bb*")), "Yes", "")
ການເພີ່ມສອງຟັງຊັນ COUNTIF ຈະເຮັດວຽກນຳ. ໃນກໍລະນີນີ້, ເຄື່ອງຫມາຍບວກເຮັດວຽກຄືກັບຕົວປະຕິບັດການ OR:
=IF(COUNTIF(A3, "*aa*") + COUNTIF(A3, "*bb*"), "Yes", "")
ແທນທີ່ຈະ hardcoding wildcard strings ໃນສູດ, ທ່ານສາມາດໃສ່ພວກມັນຢູ່ໃນຕາລາງແຍກຕ່າງຫາກ, ເວົ້າວ່າ D2 ແລະ F2, ດັ່ງທີ່ສະແດງ. ໃນ screenshot ຂ້າງລຸ່ມນີ້. ກະລຸນາສັງເກດເຫັນວ່າສິ່ງເຫຼົ່ານີ້ການອ້າງອີງເຊລຖືກລັອກດ້ວຍເຄື່ອງໝາຍ $ ເພື່ອໃຫ້ສູດຄຳນວນສຳເນົາໄປໃສ່ເຊລລຸ່ມນີ້ຢ່າງຖືກຕ້ອງ:
=IF(OR(COUNTIF(A2, "*"&$D$2&"*"), COUNTIF(A2, "*"&$F$2&"*")), "Yes", "")
ສູດຄຳນວນຂ້າງເທິງນີ້ເຮັດວຽກໄດ້ດີສຳລັບ 2 ສ່ວນທີ່ກົງກັນ. , ແຕ່ຖ້າທ່ານກໍາລັງຊອກຫາ 3 ຫຼືຫຼາຍກວ່ານັ້ນ, ພວກມັນຈະກາຍເປັນຄວາມຍາວເກີນໄປ. ໃນກໍລະນີນີ້, ມັນຢືນຢູ່ກັບເຫດຜົນທີ່ຈະເຂົ້າຫາວຽກທີ່ແຕກຕ່າງ:
ສະໜອງສະຕຣິງຍ່ອຍຫຼາຍອັນໃຫ້ກັບຟັງຊັນ SEARCH ໃນ array ຄົງທີ່, ນັບຕົວເລກທີ່ສົ່ງມາ, ແລະກວດເບິ່ງວ່າຜົນໄດ້ຮັບແມ່ນໃຫຍ່ກວ່າສູນ (ເຊິ່ງຫມາຍຄວາມວ່າ. ຢ່າງໜ້ອຍໜຶ່ງໃນສາຍຍ່ອຍຖ້າພົບເຫັນ):
=IF(COUNT(SEARCH({"aa","bb"}, A2))>0, "Yes", "")
ດ້ວຍວິທີນີ້, ທ່ານຈະໄດ້ຮັບຜົນທີ່ຄືກັນດ້ວຍສູດຄຳນວນທີ່ແໜ້ນໜາກວ່າ:
Excel IF AND ສູດດ້ວຍ wildcards
ເມື່ອທ່ານຕ້ອງການກວດເບິ່ງວ່າເຊລມີສອງສະຕຣິງຍ່ອຍທີ່ແຕກຕ່າງກັນ ຫຼືຫຼາຍກວ່ານັ້ນ, ວິທີທີ່ງ່າຍທີ່ສຸດແມ່ນການໃຊ້ຟັງຊັນ COUNTIFS ດ້ວຍຕົວແທນເພື່ອທົດສອບຢ່າງມີເຫດຜົນ.
ສົມມຸດວ່າທ່ານຕ້ອງການຊອກຫາຕາລາງໃນຖັນ A ທີ່ມີທັງ "b" ແລະ "2". ເພື່ອເຮັດມັນໃຫ້ສຳເລັດ, ໃຫ້ໃຊ້ "*b*" ແລະ "*2*" ສໍາລັບເງື່ອນໄຂຂອງ COUNTIFS ແລະ A2 ສໍາລັບຂອບເຂດເງື່ອນໄຂ:
=IF(COUNTIFS(A2, "*b*", A2, "*2*"), "Yes", "")
ອີກວິທີໜຶ່ງແມ່ນໃຊ້ສູດ IF AND ຮ່ວມກັນ. ດ້ວຍ ISNUMBER SEARCH:
=IF(AND(ISNUMBER(SEARCH("b", A2)), ISNUMBER(SEARCH("2", A2))), "Yes", "")
ເຖິງວ່າພວກເຮົາບໍ່ໄດ້ລວມເອົາຕົວອັກສອນແທນອັນໃດຢູ່ໃນສູດຄຳນວນນີ້, ແຕ່ມັນເຮັດວຽກຄືກັບການຊອກຫາສອງສະຕຣິງ wildcard ("*b*" ແລະ "*2*" ) ໃນເຊລດຽວກັນ.
ແນ່ນອນ, ບໍ່ມີຫຍັງກີດຂວາງທ່ານບໍ່ໃຫ້ໃສ່ຄ່າຄົ້ນຫາໃນເຊລທີ່ກຳນົດໄວ້ລ່ວງໜ້າ, D2 ແລະ F2 ໃນກໍລະນີຂອງພວກເຮົາ, ແລະການສະໜອງເຊັລອ້າງອີງໃສ່ສູດ:
=IF(AND(ISNUMBER(SEARCH($D$2, A2)), ISNUMBER(SEARCH($F$2, A2))), "Yes", "")
ຫາກທ່ານຕ້ອງການໃຊ້ສູດຄຳນວນທີ່ກະທັດຮັດກວ່າຢູ່ບ່ອນທີ່ເປັນໄປໄດ້, ເຈົ້າອາດຈະມັກວິທີການຄົງທີ່ຂອງອາເຣ. ສູດ IF COUNT SEARCH ແມ່ນຫຼາຍຄືກັບຕົວຢ່າງທີ່ຜ່ານມາ, ແຕ່ເນື່ອງຈາກເວລານີ້ທັງສອງສະຕຣິງຍ່ອຍຕ້ອງປາກົດຢູ່ໃນ A2, ພວກເຮົາກວດເບິ່ງວ່ານັບເທົ່າກັບ 2:
=IF(COUNT(SEARCH({"b","2"}, A2))=2, "Yes", "")
ເຫຼົ່ານີ້ແມ່ນວິທີການຕົ້ນຕໍຂອງການໃຊ້ wildcard ໃນຄໍາຖະແຫຼງ IF ໃນ Excel. ຖ້າທ່ານຮູ້ວິທີແກ້ໄຂອື່ນໆ, ຜູ້ໃຊ້ອື່ນໆຈະຊື່ນຊົມແນ່ນອນຖ້າທ່ານແບ່ງປັນປະສົບການຂອງທ່ານໃນຄໍາເຫັນ. ຂ້າພະເຈົ້າຂໍຂອບໃຈທ່ານສໍາລັບການອ່ານແລະຫວັງວ່າຈະໄດ້ພົບທ່ານໃນ blog ຂອງພວກເຮົາໃນອາທິດຕໍ່ໄປ!
ປື້ມຄູ່ມືການປະຕິບັດສໍາລັບການດາວໂຫຼດ
ຕົວຢ່າງສູດ Excel IF wildcard (ໄຟລ໌ .xlsx)