Deklarata Excel IF për përputhjen e pjesshme të tekstit (wildcard)

  • Shperndaje Kete
Michael Brown

Po përpiqeni të krijoni një deklaratë IF me tekst të shkronjave, por dështon çdo herë? Problemi nuk është në formulën tuaj, por në vetë funksionin - Excel IF nuk mbështet karaktere të shkreta. Megjithatë, ekziston një mënyrë për ta bërë atë të funksionojë për përputhjen e pjesshme të tekstit dhe ky tutorial do t'ju mësojë se si.

Sa herë që dëshironi të kryeni përputhje të pjesshme ose të paqartë në Excel, zgjidhja më e dukshme është për të përdorur shkronja të egra. Por, çka nëse një funksion specifik që duhet të përdorni nuk mbështet karakteret e karaktereve të egra? Mjerisht, Excel IF është një nga funksionet e tilla. Kjo është veçanërisht zhgënjyese duke pasur parasysh se funksionet e tjera "të kushtëzuara" si COUNTIF, SUMIF dhe AVERAGEIFS funksionojnë në mënyrë të përkryer me shkronja të këqija.

Për fat, nuk është pengesa që mund të ndalojë një përdorues krijues të Excel :) Duke kombinuar IF me funksione të tjera, ju mund ta detyroni atë të vlerësojë një përputhje të pjesshme dhe të marrë një alternativë të mirë për një formulë të shkronjave të ngurta Excel IF.

    Pse funksioni Excel IF me shkronja të ngurta nuk funksionon

    Në tabelën e mostrës më poshtë, duke supozuar se dëshironi të kontrolloni nëse ID-të në kolonën e parë përmbajnë shkronjën "A". Nëse gjendet - shfaq "Po" në kolonën B, nëse jo - shfaq "Jo".

    Duket sikur përfshirja e tekstit të shkronjave të egra në testin logjik do të ishte një zgjidhje e lehtë:

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

    Por për fat të keq nuk funksionon. Formula kthen "Jo" për të gjitha qelizat, edhe ato që përmbajnë "A":

    Psedështojnë një deklaratë me karakter të egër IF? Nga të gjitha paraqitjet, Excel nuk njeh shkronja të egra të përdorura me një shenjë të barabartë ose operatorë të tjerë logjikë. Duke i hedhur një vështrim më të afërt listës së funksioneve që mbështesin shkronjat e egra, do të vini re se sintaksa e tyre supozon që një tekst i shkretë të shfaqet drejtpërdrejt në një argument si ky:

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

    Excel IF përmban tekst të pjesshëm

    Tani që e dini arsyen pse dështon formula e shkronjës IF, le të përpiqemi të kuptojmë se si ta bëjmë atë të funksionojë. Për këtë, ne thjesht do të vendosim një funksion që pranon shkronja të ngurta në testin logjik të IF, përkatësisht funksionin COUNTIF:

    IF(COUNTIF( qeliza, "* tekst* "), value_if_true, value_if_false)

    Me këtë qasje, IF nuk ka asnjë problem me të kuptuarit e shkronjave të egra dhe identifikon pa të meta qelizat që përmbajnë ose "A" ose "a" (pasi COUNTIF nuk është i ndjeshëm ndaj shkronjave të vogla):

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

    Kjo formulë shkon te B2, ose çdo qelizë tjetër në rreshtin 2, dhe më pas mund ta tërhiqni poshtë në aq qeliza sa të nevojitet:

    Kjo zgjidhje mund të përdoret gjithashtu për të gjetur vargjet e një modeli specifik . Duke supozuar se vetëm ID-të që përbëhen nga 2 grupe me 2 karaktere të ndara me vizë janë të vlefshme, mund të përdorni "??-??" vargu i shkronjave të egra për t'i identifikuar ato:

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

    Si funksionon kjo formulë:

    Për testin logjik të IF, ne përdorim funksionin COUNTIF që numëron numrin e qelizave që përputhen me karakterin e specifikuarvarg. Meqenëse diapazoni i kritereve është një qelizë e vetme (A2), rezultati është gjithmonë 1 (përputhja është gjetur) ose 0 (përputhja nuk është gjetur). Duke pasur parasysh që 1 barazohet me TRUE dhe 0 me FALSE, formula kthen "Vlefshme" (vlera_if_true) kur numërimi është 1 dhe një varg bosh (vlera_if_false) kur numërimi është 0.

    IF ISNUMBER SEARCH formulë për të pjesshme përputhet

    Një mënyrë tjetër për të detyruar Excel IF të punojë për përputhjen e pjesshme të tekstit është përfshirja e funksionit FIND ose SEARCH në testin logjik. Dallimi është se FIND është e ndjeshme ndaj shkronjave të vogla ndërsa SEARCH jo.

    Pra, në varësi të faktit nëse doni t'i trajtoni shkronjat e vogla dhe të mëdha si karaktere të njëjta ose të ndryshme, një nga këto formula do të funksionojë:

    Formula e pandjeshme ndaj shkronjave për përputhjen e pjesshme:

    IF(ISNUMBER(SEARCH(" tekst", qeliza)), vlera_if_true, vlera_if_false )

    Formula e ndjeshme sipas rastit për përputhjen e pjesshme:

    IF(ISNUMBER(FIND(" tekst", qeliza)), vlera_if_true, vlera_if_false )

    Meqenëse të dy funksionet janë krijuar për të kryer një lloj përputhjeje "qeliza përmban", në këtë rast nuk nevojiten shenjat e ngurta.

    Për shembull, për të zbuluar ID-të që përmbajnë "A" ose "a" , formula është:

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

    Për të kërkuar vetëm një "A" të madhe dhe për të injoruar "a", formula është:

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

    Në B6 në pamjen e mëposhtme të ekranit, mund të vëzhgoni ndryshimin në rezultat:

    Si funksionon kjo formulë:

    Në zemra eformula, ekziston një kombinim i ISNUMBER dhe SEARCH (ose FIND):

    ISNUMBER(SEARCH("A", A2))

    Funksioni SEARCH kërkon tekstin e specifikuar ("A" në këtë shembull) dhe kthen pozicionin e tij brenda një varg në A2. Nëse teksti nuk gjendet, kthehet një gabim #VALUE. Duke qenë se të dyja SEARCH dhe FIND janë krijuar për të kryer një lloj përputhjeje "qeliza përmban", në këtë rast nuk nevojiten shenjat e egra.

    Funksioni ISNUMBER konverton një numër në TRUE dhe çdo vlerë tjetër duke përfshirë gabimin në FALSE . Vlera logjike shkon drejtpërdrejt në testin logjik të IF. Në rastin tonë, A2 përmban "A", kështu që ISNUMBER kthen TRUE:

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

    Si rezultat, IF kthen vlerën e vendosur për argumentin value_if_true , që është "Po".

    Deklarata e Excel IF OR me shkronja të ngurta

    Duhet të identifikoni qelizat që përmbajnë një nga vargjet e tekstit të shkronjave të egra? Në këtë rast, ju mund të kombinoni deklaratën klasike IF OSE me formulën COUNTIF ose ISNUMBER SEARCH të diskutuar më sipër.

    Për shembull, për të kërkuar "aa" OSE "bb" në A2 duke injoruar shkronjën dhe ktheni " Po" nëse gjendet ndonjë, përdorni një nga këto formula:

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

    ose

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

    Shtimi i dy funksioneve COUNTIF do të funksionojë gjithashtu. Në këtë rast, shenja plus funksionon si operatori OR:

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

    Në vend të kodimit të vargjeve të karaktereve të ngurta në formulë, mund t'i futni ato në qeliza të veçanta, të themi D2 dhe F2, siç tregohet. në pamjen e ekranit më poshtë. Ju lutemi vini re se këtoreferencat e qelizave janë të kyçura me shenjën $ në mënyrë që formula të kopjohet saktë në qelizat e mëposhtme:

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

    Formulat e mësipërme funksionojnë mirë për 2 përputhje të pjesshme , por nëse jeni duke kërkuar për 3 ose më shumë, ato do të bëhen shumë të gjata. Në këtë rast, është e arsyeshme t'i qasemi detyrës ndryshe:

    Furnizoni nënvargje të shumta për funksionin SEARCH në një grup konstante, numëroni numrat e kthyer dhe kontrolloni nëse rezultati është më i madh se zero (që do të thotë se të paktën një nga nënvargjet nëse gjendet):

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

    Në këtë mënyrë, do të merrni saktësisht të njëjtin rezultat me një formulë më kompakte:

    Formula Excel IF AND me shkronja të egra

    Kur dëshironi të kontrolloni nëse një qelizë përmban dy ose më shumë nënvargje të ndryshme, mënyra më e lehtë është të përdorni funksionin COUNTIFS me shkronja të ngurta për testin logjik.

    Duke supozuar se doni të gjeni qelizat në kolonën A që përmbajnë "b" dhe "2". Për ta bërë këtë, përdorni "*b*" dhe "*2*" për kriteret e COUNTIFS dhe A2 për diapazonin e kritereve:

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

    Një mënyrë tjetër është të përdorni formulën IF AND së bashku. me ISNUMBER SEARCH:

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

    Megjithëse ne nuk përfshijmë asnjë karakter të shkrehtë në këtë formulë, ajo funksionon si kërkimi i dy vargjeve të shkronjave ("*b*" dhe "*2*" ) në të njëjtën qelizë.

    Sigurisht, asgjë nuk ju pengon të vendosni vlerat e kërkimit në qelizat e paracaktuara, D2 dhe F2 në rastin tonë, dhe të furnizonireferencat e qelizave në formulën:

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

    Nëse preferoni të përdorni formula më kompakte kudo që të jetë e mundur, atëherë mund t'ju pëlqejë më mirë qasja konstante e grupit. Formula IF COUNT SEARCH është shumë si në shembullin e mëparshëm, por për shkak se këtë herë të dy nënvargjet duhet të shfaqen në A2, ne kontrollojmë nëse numërimi është i barabartë me 2:

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

    Këto janë metodat kryesore të përdorimit të shkronjave të egra në deklaratën IF në Excel. Nëse dini ndonjë zgjidhje tjetër, përdoruesit e tjerë me siguri do ta vlerësojnë nëse ndani përvojën tuaj në komente. Ju falënderoj që lexoni dhe shpresoj t'ju shohim në blogun tonë javën e ardhshme!

    Praktikoni librin e punës për shkarkim

    Shembuj të formulës së shkronjave të egra Excel IF (skedari xlsx)

    Michael Brown është një entuziast i përkushtuar i teknologjisë me një pasion për thjeshtimin e proceseve komplekse duke përdorur mjete softuerike. Me më shumë se një dekadë përvojë në industrinë e teknologjisë, ai ka përmirësuar aftësitë e tij në Microsoft Excel dhe Outlook, si dhe Google Sheets dhe Docs. Blogu i Michael është i përkushtuar ndaj ndarjes së njohurive dhe ekspertizës së tij me të tjerët, duke ofruar këshilla dhe mësime të thjeshta për t'u ndjekur për të përmirësuar produktivitetin dhe efikasitetin. Pavarësisht nëse jeni një profesionist me përvojë apo fillestar, blogu i Michael ofron njohuri të vlefshme dhe këshilla praktike për të përfituar sa më shumë nga këto mjete softuerike thelbësore.