Pernyataan Excel IF pikeun patandingan téks parsial (wildcard)

  • Bagikeun Ieu
Michael Brown

Nyobaan nyieun pernyataan IF nganggo téks wildcard, tapi gagal unggal waktos? Masalahna henteu dina rumus anjeun tapi dina fungsina sorangan - Excel IF henteu ngadukung karakter wildcard. Nanging, aya cara pikeun ngajantenkeun éta tiasa dianggo pikeun patandingan téks parsial, sareng tutorial ieu bakal ngajarkeun anjeun kumaha carana.

Iraha waé anjeun badé ngalakukeun patandingan parsial atanapi kabur dina Excel, solusi anu paling jelas nyaéta ngagunakeun wildcards. Tapi kumaha upami fungsi khusus anu anjeun kedah dianggo henteu ngadukung karakter wildcard? Hanjakalna, Excel IF mangrupikeun salah sahiji fungsi sapertos kitu. Ieu utamana nguciwakeun tempo yén fungsi "bersyarat" lianna kayaning COUNTIF, SUMIF, sarta AVERAGEIFS dianggo kalayan wildcards sampurna ogé.

Untungna, teu halangan nu bisa ngeureunkeun pamaké Excel kreatif :) Ku ngagabungkeun IF. kalawan fungsi sejen, Anjeun bisa maksa eta pikeun evaluate hiji patandingan parsial tur meunangkeun alternatif hade ka rumus Excel IF wildcard.

    Naha Excel IF fungsi jeung wildcard teu jalan

    Dina conto tabel di handap, upamana rék mariksa naha KTP dina kolom kahiji ngandung hurup "A". Upami kapendak - tampilkeun "Sumuhun" dina kolom B, upami henteu - tampilkeun "Henteu".

    Sigana kaasup téks wildcard dina tés logis bakal janten solusi anu gampang:

    =IF(A2="*a*","Yes", "No")

    Tapi hanjakal teu jalan. Rumusna mulihkeun "Henteu" kanggo sadaya sél, bahkan anu ngandung "A":

    Nahapernyataan wildcard IF gagal? Tina sagala rupa, Excel henteu mikawanoh wildcard anu dianggo sareng tanda anu sami atanapi operator logis anu sanés. Ningali langkung caket kana daptar fungsi anu ngadukung wildcard, anjeun bakal perhatikeun yén sintaksisna nganggap téks wildcard muncul langsung dina argumen sapertos kieu:

    =COUNTIF(A2:A10, "*a*")

    Excel IF ngandung téks parsial

    Ayeuna anjeun terang alesan kunaon rumus wildcard IF gagal, hayu urang cobian kumaha carana ngagarapna. Pikeun ieu, urang ngan saukur bakal nyelapkeun fungsi anu narima wildcards dina uji logis IF, nyaéta fungsi COUNTIF:

    IF(COUNTIF( cell, "* text* "), value_if_true, value_if_false)

    Kalayan pendekatan ieu, IF teu boga masalah dina pamahaman wildcards sarta flawlessly ngaidentipikasi sél nu ngandung boh "A" atawa "a" (saprak COUNTIF henteu sensitip leutik):

    =IF(COUNTIF(A2, "*a*"),"Yes", "No")

    Rumus ieu nuju ka B2, atanapi sél anu sanés dina baris 2, teras anjeun tiasa nyéred ka handap ka saloba sél anu diperyogikeun:

    Solusi ieu ogé tiasa dianggo pikeun milarian string tina pola khusus . Anggap ngan ID nu diwangun ku 2 grup 2 karakter dipisahkeun ku hyphen a valid, anjeun tiasa nganggo "??-??" string wildcard pikeun ngaidentipikasi aranjeunna:

    =IF(COUNTIF(A2, "??-??"), "Valid", "")

    Kumaha rumus ieu jalan:

    Pikeun tés logis tina IF, kami nganggo fungsi COUNTIF anu ngitung jumlah sél anu cocog sareng wildcard anu ditangtukeunsenar. Kusabab rentang kriteria nyaéta sél tunggal (A2), hasilna salawasna 1 (cocok kapanggih) atawa 0 (cocok teu kapanggih). Kumargi 1 sami sareng BENER sareng 0 janten PALSU, rumusna ngabalikeun "Valid" (value_if_true) nalika cacah 1 sareng string kosong (value_if_false) nalika cacah 0.

    IF ISNUMBER rumus SEARCH pikeun parsial. patandingan

    Cara séjén pikeun maksakeun Excel IF pikeun ngerjakeun patandingan téks parsial nyaéta ngalebetkeun fungsi FIND atanapi SEARCH dina tés logis. Bédana nyaéta FIND sénsitip kana hurup-hurup sedengkeun SEARCH henteu.

    Jadi, gumantung kana naha anjeun rék nganggap hurup leutik jeung hurup badag salaku karakter anu sarua atawa béda, salah sahiji rumus ieu bakal dianggo saréat:

    Huruf teu peka Rumus pikeun patandingan parsial:

    IF(ISNUMBER(SEARCH(" text", cell)), value_if_true, value_if_false )

    Huruf-sensitip Rumus pikeun patandingan parsial:

    IF(ISNUMBER(FIND(" text", cell)), value_if_true, value_if_false )

    Kusabab duanana pungsi dirancang pikeun ngalakukeun tipe cocok "sél ngandung", wildcards henteu diperlukeun dina hal ieu.

    Contona, pikeun ngadeteksi ID nu ngandung "A" atawa "a" , rumusna nyaéta:

    =IF(ISNUMBER(SEARCH("A", A2)), "Yes", "No")

    Pikeun ngan ukur milarian kapital "A" sareng teu malire "a", rumusna nyaéta:

    =IF(ISNUMBER(FIND("A", A2)), "Yes", "No")

    Dina B6 dina screenshot di handap, anjeun bisa niténan bédana hasilna:

    Kumaha rumus ieu jalan:

    Di jantung tinarumusna, aya kombinasi ISNUMBER sareng SEARCH (atanapi FIND):

    ISNUMBER(SEARCH("A", A2))

    Pungsi SEARCH milarian téks anu ditangtukeun ("A" dina conto ieu) sareng mulangkeun posisina dina jero. string dina A2. Upami téksna henteu kapendak, kasalahan #VALUE dipulangkeun. Kusabab duanana SEARCH sareng FIND dirancang pikeun ngalakukeun jinis patandingan "sél ngandung", wildcard henteu diperyogikeun dina hal ieu.

    Pungsi ISNUMBER ngarobah hiji angka kana BENER sareng nilai anu sanés kalebet kasalahan janten PALSU. . Nilai logis mana langsung ka test logis IF. Dina kasus urang, A2 ngandung "A", jadi ISNUMBER mulih BENER:

    IF(TRUE, "Yes", "No")

    Salaku hasilna, IF mulihkeun nilai disetel pikeun value_if_true argumen, nu mangrupa "Leres".

    Pernyataan Excel IF OR sareng wildcard

    Peryogi pikeun ngaidentipikasi sél anu ngandung salah sahiji senar téks wildcard? Dina hal ieu, anjeun tiasa ngagabungkeun pernyataan IF OR klasik sareng rumus COUNTIF atanapi ISNUMBER SEARCH anu dibahas di luhur.

    Contona, milarian "aa" ATAWA "bb" dina A2 teu malire hurup hurup sareng uih deui " Leres" upami aya salah sahijina, paké salah sahiji rumus ieu:

    =IF(OR(ISNUMBER(SEARCH("aa", A2)), ISNUMBER(SEARCH("bb", A2))), "Yes", "")

    atanapi

    =IF(OR(COUNTIF(A2, "*aa*"), COUNTIF(A2, "*bb*")), "Yes", "")

    Tambahkeun dua fungsi COUNTIF ogé bakal jalan. Dina hal ieu, tanda tambah tiasa dianggo sapertos operator OR:

    =IF(COUNTIF(A3, "*aa*") + COUNTIF(A3, "*bb*"), "Yes", "")

    Tinimbang hardcoding string wildcard dina rumus, anjeun tiasa ngasupkeun kana sél anu misah, sebutkeun D2 sareng F2, sapertos anu dipidangkeun. dina screenshot handap. Punten perhatikeun yén ieurujukan sél dikonci ku tanda $ sahingga rumus nyalin bener ka sél handap:

    =IF(OR(COUNTIF(A2, "*"&$D$2&"*"), COUNTIF(A2, "*"&$F$2&"*")), "Yes", "")

    Rumus di luhur bisa dipake pikeun 2 patandingan parsial. , tapi upami anjeun milarian 3 atanapi langkung, aranjeunna bakal panjang teuing. Dina hal ieu, éta alesan pikeun pendekatan tugas béda:

    Supply sababaraha substrings kana fungsi SEARCH dina array konstanta, cacah angka balik, sarta pariksa lamun hasilna leuwih gede ti nol (anu hartosna yén sahenteuna salah sahiji substrings upami kapanggih):

    =IF(COUNT(SEARCH({"aa","bb"}, A2))>0, "Yes", "")

    Ku cara ieu, anjeun bakal nampi hasil anu sami sareng rumus anu langkung ringkes:

    Rumus Excel IF AND sareng wildcard

    Nalika anjeun hoyong pariksa naha sél ngandung dua atanapi langkung substring anu béda, cara anu paling gampang nyaéta ngagunakeun fungsi COUNTIFS sareng wildcard pikeun uji logis.

    Upami anjeun hoyong milarian sél dina kolom A anu ngandung "b" sareng "2". Jang ngalampahkeunana, paké "*b*" jeung "*2*" pikeun kritéria COUNTIFS jeung A2 pikeun rentang kritéria:

    =IF(COUNTIFS(A2, "*b*", A2, "*2*"), "Yes", "")

    Cara séjénna nyaéta ngagunakeun rumus IF AND babarengan. kalawan ISNUMBER SEARCH:

    =IF(AND(ISNUMBER(SEARCH("b", A2)), ISNUMBER(SEARCH("2", A2))), "Yes", "")

    Sanajan urang teu kaasup karakter wildcard dina rumus ieu, éta jalan kawas néangan dua string wildcard ("*b*" jeung "*2*" ) dina sél anu sarua.

    Tangtosna, teu aya anu ngahalangan anjeun pikeun ngasupkeun nilai pamilarian dina sél anu tos ditetepkeun, D2 sareng F2 dina hal urang, sareng nyayogikeunrujukan sél kana rumus:

    =IF(AND(ISNUMBER(SEARCH($D$2, A2)), ISNUMBER(SEARCH($F$2, A2))), "Yes", "")

    Upami anjeun resep ngagunakeun rumus anu langkung kompak dimana waé, maka anjeun langkung saé resep pendekatan konstanta array. Rumus IF COUNT SEARCH mirip pisan sareng conto samemehna, tapi kusabab waktos ieu duanana substrings kedah muncul dina A2, urang pariksa upami cacahna sami sareng 2:

    =IF(COUNT(SEARCH({"b","2"}, A2))=2, "Yes", "")

    Ieu métode utama ngagunakeun wildcard dina pernyataan IF dina Excel. Upami anjeun terang solusi anu sanés, pangguna sanés pasti bakal ngahargaan upami anjeun ngabagi pangalaman anjeun dina koméntar. Hatur nuhun pikeun maca sareng ngarepkeun anjeun tiasa ningali dina blog urang minggu payun!

    Buku kerja latihan pikeun diunduh

    Conto rumus Excel IF (file .xlsx)

    Michael Brown mangrupakeun enthusiast téhnologi dedicated kalawan gairah pikeun nyederhanakeun prosés kompléks ngagunakeun parabot software. Kalayan langkung ti dasawarsa pangalaman dina industri téknologi, anjeunna parantos ngasah kaahlianna dina Microsoft Excel sareng Outlook, ogé Google Sheets sareng Docs. Blog Michael dikhususkeun pikeun ngabagi pangaweruh sareng kaahlianna ka batur, nyayogikeun tip sareng tutorial anu gampang pikeun ningkatkeun produktivitas sareng efisiensi. Naha anjeun profésional berpengalaman atanapi pamula, blog Michael nawiskeun wawasan anu berharga sareng naséhat praktis pikeun ngamangpaatkeun alat parangkat lunak penting ieu.