Агуулгын хүснэгт
Хэрэв тэмдэгт бичвэр бүхий IF мэдэгдлийг бүтээхийг оролдож байгаа ч тэр бүр бүтэлгүйтдэг үү? Асуудал нь таны томъёонд биш харин функцэд байгаа юм - Excel IF нь орлуулагдах тэмдэгтүүдийг дэмждэггүй. Гэсэн хэдий ч, текстийг хэсэгчлэн тааруулахын тулд үүнийг ажиллуулах арга байдаг бөгөөд энэ заавар нь танд хэрхэн хийхийг заах болно.
Та Excel дээр хэсэгчилсэн эсвэл бүдэг бадаг тааруулахыг хүссэн үедээ хамгийн ойлгомжтой шийдэл юм. орлуулагч тэмдэг ашиглах. Гэхдээ таны ашиглах шаардлагатай функц нь орлуулагдах тэмдэгтүүдийг дэмждэггүй бол яах вэ? Харамсалтай нь Excel IF бол ийм функцүүдийн нэг юм. COUNTIF, SUMIF, AVERAGEIFS зэрэг бусад "нөхцөлт" функцууд нь орлуулагч тэмдэгтүүдтэй маш сайн ажилладаг тул энэ нь ялангуяа сэтгэл дундуур байна.
Аз болоход энэ нь Excel-ийн бүтээлч хэрэглэгчийг зогсоож чадах зүйл биш юм :) IF-г нэгтгэснээр. Бусад функцтэй бол та үүнийг хэсэгчлэн тохирохыг хүчээр үнэлж, Excel IF орлуулагч тэмдэгт томьёоны сайн хувилбарыг авах боломжтой.
Яагаад орлуулагч тэмдэгттэй Excel IF функц ажиллахгүй байна вэ
Доорх жишээ хүснэгтэд эхний баганад байгаа ID-д "А" үсэг байгаа эсэхийг шалгахыг хүсэж байна гэж бодъё. Хэрэв олдвол - В баганад "Тийм" гэж, үгүй бол "Үгүй" гэж харуулна.
Логик тестэнд орлуулагч тэмдэгтийг оруулах нь хялбар шийдэл байх шиг байна:
=IF(A2="*a*","Yes", "No")
Харамсалтай нь бүтэхгүй байна. Томъёо нь "А"-г агуулсан бүх нүднүүдэд "Үгүй"-г буцаана:
Яагаадорлуулагч IF мэдэгдэл амжилтгүй болсон уу? Бүх харагдах байдлаас харахад Excel нь тэнцүү тэмдэг эсвэл бусад логик оператортой ашигласан орлуулалтыг танихгүй. Оролцогч тэмдэгтүүдийг дэмждэг функцуудын жагсаалтыг анхааралтай ажиглавал тэдгээрийн синтакс нь аргумент дотор шууд гарч ирэхийн тулд орлуулагч тэмдэгтийн текстийг агуулж байгааг анзаарах болно:
=COUNTIF(A2:A10, "*a*")
Excel IF хэсэгчилсэн текст агуулж байна
Одоо та IF томьёо яагаад бүтэлгүйтэх болсон шалтгааныг мэдэж байгаа тул үүнийг хэрхэн ажиллуулах талаар олж мэдье. Үүний тулд бид зүгээр л IF-ийн логик тестэд орлуулагч тэмдэгтүүдийг хүлээн авдаг функцийг оруулах болно, тухайлбал COUNTIF функц:
IF(COUNTIF( нүд, "* текст* "), хэрэв_үнэн_хэрэв_хэрэв_хэрэв_хэрэв_худал)Энэ аргын тусламжтайгаар IF нь орлуулагч тэмдэгтүүдийг ойлгоход ямар ч асуудалгүй бөгөөд "A" эсвэл "a"-г агуулсан нүднүүдийг өө сэвгүй танина (COUNTIF нь жижиг жижиг жижиг жижиг үсгээр ялгагддаггүй тул):
=IF(COUNTIF(A2, "*a*"),"Yes", "No")
Энэ томьёо нь B2 эсвэл 2-р эгнээний бусад нүд рүү очих ба дараа нь та үүнийг шаардлагатай бол олон нүд рүү чирж болно:
Энэ шийдлийг мөн тодорхой загварын мөрүүдийг олоход ашиглаж болно. Зөвхөн зураасаар тусгаарлагдсан 2 тэмдэгтээс бүрдэх 2 бүлэг ID-г хүчинтэй гэж үзвэл та "??-??" тэдгээрийг тодорхойлох орлуулагч тэмдэгт мөр:
=IF(COUNTIF(A2, "??-??"), "Valid", "")
Энэ томьёо хэрхэн ажилладаг вэ:
Логик тестийн хувьд ХЭРЭВ бол бид заасан орлуулагч тэмдэгттэй тохирох нүдний тоог тоолох COUNTIF функцийг ашигладагмөр. Шалгуурын муж нь нэг нүд (A2) тул үр дүн нь үргэлж 1 (тохирол олдсон) эсвэл 0 (тохирол олдсонгүй) байна. 1 нь ҮНЭН, 0 нь ХУДАЛ гэсэн утгатай тэнцэж байгаа тул тоо 1 байвал томьёо нь "Хүчин төгөлдөр" (үнэн_хэрэв_үнэн), 0 бол хоосон мөр (утга_хэрэв_худал) буцаана.
Хэсэгчилсэн IF ISNUMBER SEARCH томьёо. matches
Excel IF-г хэсэгчилсэн текст тааруулахын тулд ажиллуулах өөр нэг арга бол логик тестэнд ОЛОХ эсвэл ХАЙХ функцийг оруулах явдал юм. Ялгаа нь: FIND нь SEARCH том жижиг үсгийг том жижиг үсгээр хардаг.
Тиймээс та жижиг, том үсгийг ижил эсвэл өөр тэмдэгт гэж үзэх эсэхээс хамаарч эдгээр томъёоны аль нэг нь ажиллах болно:
Хэсэгчилсэн тохирох том жижиг жижиг томьёо:
IF(ISNUMBER(SEARCH(" текст", нүд)), утга_хэрэв_үнэн, утга_худал )Хэсэгчилсэн тохирох том жижиг жижиг томьёо:
IF(ISNUMBER(FIND(" текст", нүд)), утга_хэрэв_үнэн, утга_худал )Хоёр функц нь "нүд агуулсан" төрлийн тохирохыг гүйцэтгэхээр бүтээгдсэн тул энэ тохиолдолд орлуулагч тэмдэгт шаардлагагүй.
Жишээ нь, "A" эсвэл "a" агуулсан ID-г илрүүлэхийн тулд , томьёо нь:
=IF(ISNUMBER(SEARCH("A", A2)), "Yes", "No")
Зөвхөн "А" том үсгийг хайх ба "a"-г үл тоомсорлохын тулд томъёо нь:
=IF(ISNUMBER(FIND("A", A2)), "Yes", "No")
Доорх дэлгэцийн зурган дээрх B6 дээр үр дүнгийн ялгааг ажиглаж болно:
Энэ томъёо хэрхэн ажилладаг вэ:
зүрхтомъёонд ISNUMBER болон ХАЙХ (эсвэл ОЛОХ) гэсэн хослол байна:
ISNUMBER(SEARCH("A", A2))
SEARCH функц нь заасан текстийг (энэ жишээнд "A") хайж, доторх байрлалаа буцаана. А2 дахь мөр. Хэрэв текст олдоогүй бол #VALUE алдаа гарна. SEARCH болон FIND аль аль нь "нүд агуулсан" төрлийн тохирохыг гүйцэтгэхээр бүтээгдсэн тул энэ тохиолдолд орлуулагч тэмдэг шаардлагагүй.
ISNUMBER функц нь тоог ҮНЭН болгож, алдаа зэрэг бусад утгыг ХУДАЛ болгон хувиргадаг. . Логик утга нь IF-ийн логик тест рүү шууд ордог. Манай тохиолдолд A2 нь "A"-г агуулж байгаа тул ISNUMBER нь ҮНЭНийг буцаана:
IF(TRUE, "Yes", "No")
Үүний үр дүнд IF нь үнэн_хэрэв_үнэн аргументын тогтоосон утгыг буцаана. "Тийм".
Excel IF OR statement with wildcards
Оролцогч тэмдэгтийн текстийн мөрүүдийн аль нэгийг агуулсан нүднүүдийг тодорхойлох шаардлагатай юу? Энэ тохиолдолд та сонгодог IF OR хэллэгийг дээр дурдсан COUNTIF эсвэл ISNUMBER SEARCH томьёотой хослуулж болно.
Жишээ нь, "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", "")
Та томьёоны орлуулагдах тэмдэгт мөрүүдийг хатуу кодлохын оронд тэдгээрийг тус тусад нь нүднүүдэд оруулж болно, D2 ба F2 гэж үзүүлэв. доорх дэлгэцийн агшинд. Эдгээрийг анхаарна ууНүдний лавлагаа нь $ тэмдгээр түгжигдсэн тул томъёог доорх нүднүүдэд зөв хуулах болно:
=IF(OR(COUNTIF(A2, "*"&$D$2&"*"), COUNTIF(A2, "*"&$F$2&"*")), "Yes", "")
Дээрх томьёо нь 2 хэсэгчилсэн тохирлын хувьд сайн ажилладаг. , гэхдээ хэрэв та 3 ба түүнээс дээш хайж байгаа бол тэдгээр нь хэтэрхий урт байх болно. Энэ тохиолдолд даалгаварт өөрөөр хандах нь үндэслэлтэй:
ХАЙЛТЫН функцэд олон дэд мөрүүдийг массивын тогтмол хэлбэрээр оруулж, буцаасан тоог тоолж, үр дүн нь тэгээс их байгаа эсэхийг шалгана (энэ нь Хэрэв олдвол дор хаяж нэг дэд мөр олдвол):
=IF(COUNT(SEARCH({"aa","bb"}, A2))>0, "Yes", "")
Ингэснээр та илүү нягт томьёотой яг ижил үр дүнг авах болно:
Excel IF AND томьёо нь орлуулагч тэмдэгттэй
Та нүдэнд хоёр буюу түүнээс дээш өөр дэд мөр байгаа эсэхийг шалгахыг хүсвэл логик тестийн хувьд COUNTIFS функцийг орлуулагч тэмдэгтээр ашиглах нь хамгийн хялбар арга юм.
Та A баганад "b" болон "2" хоёуланг нь агуулсан нүднүүдийг олохыг хүсч байна гэж бодъё. Үүнийг хийхийн тулд COUNTIFS-ийн шалгуурт "*b*" ба "*2*"-г, шалгуурын мужид A2-г ашиглана уу:
=IF(COUNTIFS(A2, "*b*", A2, "*2*"), "Yes", "")
Өөр нэг арга бол IF AND томьёог хамтад нь ашиглах явдал юм. ISNUMBER SEARCH-тай:
=IF(AND(ISNUMBER(SEARCH("b", A2)), ISNUMBER(SEARCH("2", A2))), "Yes", "")
Хэдийгээр бид энэ томьёонд орлуулагдах тэмдэгтүүдийг оруулаагүй ч гэсэн хоёр орлуулагч тэмдэгт мөрийг ("*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", "")
Эдгээр нь Excel програмын IF мэдэгдэлд орлуулагдах тэмдэг ашиглах үндсэн аргууд юм. Хэрэв та өөр шийдлийг мэддэг бол сэтгэгдэл дээр туршлагаа хуваалцвал бусад хэрэглэгчид талархах нь гарцаагүй. Уншсан танд баярлалаа, дараа долоо хоногт манай блог дээр уулзана гэж найдаж байна!
Татаж авах дасгалын ном
Excel IF орлуулагч томьёоны жишээнүүд (.xlsx файл)