Excel: Ако ќелијата содржи примери на формула

  • Споделете Го Ова
Michael Brown

Содржина

Упатството дава голем број примери на формула „Excel ако содржи“ кои покажуваат како да вратите нешто во друга колона ако целната ќелија содржи потребна вредност, како да пребарувате со делумно совпаѓање и тестирате повеќе критериуми со ИЛИ како како и И логиката.

Една од најчестите задачи во Excel е проверката дали ќелијата содржи вредност на интерес. Каква вредност може да биде тоа? Само каков било текст или број, специфичен текст или воопшто која било вредност (не празна ќелија).

Постојат неколку варијации на формулата „Ако ќелијата содржи“ во Excel, во зависност од тоа кои точно вредности сакате да ги најдете. Општо земено, ќе ја користите функцијата IF за да направите логички тест и ќе вратите една вредност кога условот е исполнет (клетката содржи) и/или друга вредност кога условот не е исполнет (клетката не содржи). Примерите подолу ги покриваат најчестите сценарија.

    Ако ќелијата содржи некоја вредност, тогаш

    За почеток, ајде да видиме како да пронајдеме ќелии што содржат нешто воопшто: било текст, број или датум. За ова, ќе користиме едноставна формула IF која проверува дали нема празни ќелии.

    IF( ќелија"", value_to_return, "")

    За на пример, за да се врати „Не празно“ во колоната Б ако ќелијата на колоната А во истиот ред содржи која било вредност, внесете ја следнава формула во B2, а потоа кликнете двапати на малиот зелен квадрат во долниот десен агол за да ја копирате формулата надолу. наколона:

    =IF(A2"", "Not blank", "")

    Резултатот ќе изгледа слично на ова:

    Ако ќелијата содржи текст, тогаш

    Ако сакате да најдете само ќелии со текстуални вредности што ги игнорираат броевите и датумите, тогаш користете IF во комбинација со функцијата ISTEXT. Еве ја генеричката формула за враќање на одредена вредност во друга ќелија ако целната ќелија содржи кој било текст :

    IF(ISTEXT( ќелија), вредност_за_враќање, " ")

    Да се ​​претпостави дека сакате да го вметнете зборот "да" во колоната Б ако ќелијата во колоната А содржи текст. За да го направите тоа, ставете ја следната формула во B2:

    =IF(ISTEXT(A2), "Yes", "")

    Ако ќелијата содржи број, тогаш

    На сличен начин , можете да ги идентификувате ќелиите со нумерички вредности (броеви и датуми). За ова, користете ја функцијата IF заедно со ISNUMBER:

    IF(ISNUMBER( ќелија), value_to_return, "")

    Следната формула враќа „да“ во колоната B ако соодветната ќелија во колоната А содржи кој било број:

    =IF(ISNUMBER(A2), "Yes", "")

    Ако ќелијата содржи специфичен текст

    Наоѓање ќелии што содржат одреден текст (или бројки или датуми) е лесно. Вие пишувате обична формула IF која проверува дали целната ќелија го содржи саканиот текст и напишете го текстот што треба да се врати во аргументот value_if_true .

    IF( ќелија=" text“, value_to_return, „“)

    На пример, за да дознаете дали ќелијата A2 содржи „јаболка“, користете ја оваа формула:

    =IF(A2="apples", "Yes", "")

    Ако ќелијата не содржи специфичнитекст

    Ако го барате спротивниот резултат, односно вратете одредена вредност во друга колона ако целната ќелија не го содржи наведениот текст („јаболка“), тогаш направете едно од следново.

    Наведете празна низа ("") во аргументот value_if_true и текст за враќање во аргументот value_if_false :

    =IF(A2="apples", "", "Not apples")

    Или , ставете го операторот „не е еднаков на“ во логички_тест и текст за враќање во value_if_true:

    =IF(A2"apples", "Not apples", "")

    Во секој случај, формулата ќе произведе овој резултат:

    Ако ќелијата содржи текст: формула чувствителна на големи букви

    За да ја принудите формулата да прави разлика помеѓу големи и мали знаци, користете ја функцијата EXACT која проверува дали две текстуални низи се точно еднакви, вклучително и буквата:

    =IF(EXACT(A2,"APPLES"), "Yes", "")

    Можете и да ја внесете моделната текстуална низа во некоја ќелија (на пример во C1), поправете ја референцата на ќелијата со знакот $ ($C$1) и споредете ја целната ќелија со таа ќелија:

    =IF(EXACT(A2,$C$1), "Yes", "")

    Ако ќелијата содржи специфична текстуална низа (делумно совпаѓање)

    Завршивме со тривијални задачи и преминавме на попредизвикувачки и интересни :) Во овој пример, потребни се три различни функции за да се открие дали даден знак или подниза е дел од ќелијата содржина:

    IF(ISNUMBER(SEARCH(" текст", ќелија)), вредност_за_враќање,"")

    Работи од внатре кон надвор , еве што прави формулата:

    • TheФункцијата SEARCH бара текстуална низа и ако се најде низата, ја враќа позицијата на првиот знак, #VALUE! грешка во спротивно.
    • Функцијата ISNUMBER проверува дали SEARCH успеа или не успеа. Ако SEARCH вратил кој било број, ISNUMBER враќа ТОЧНО. Ако SEARCH резултира со грешка, ISNUMBER враќа FALSE.
    • Конечно, функцијата IF ја враќа одредената вредност за ќелиите што имаат TRUE во логичкиот тест, во спротивно празна низа („“).

    И сега, ајде да видиме како функционира оваа генеричка формула во работните листови од реалниот живот.

    Ако ќелијата содржи одреден текст, ставете вредност во друга ќелија

    Да претпоставиме дека имате листа на нарачки во колоната А и сакате да најдете нарачки со специфичен идентификатор, кажете „A-“. Задачата може да се постигне со оваа формула:

    =IF(ISNUMBER(SEARCH("A-",A2)),"Valid","")

    Наместо хардкодирање на низата во формулата, можете да ја внесете во посебна ќелија (E1), референца на таа ќелија во вашата формула :

    =IF(ISNUMBER(SEARCH($E$1,A2)),"Valid","")

    За формулата да работи правилно, погрижете се да ја заклучите адресата на ќелијата што ја содржи низата со знакот $ (апсолутна референца на ќелија).

    Ако ќелијата содржи специфичен текст, копирајте ја во друга колона

    Ако сакате да ја копирате содржината на валидните ќелии на друго место, едноставно наведете ја адресата на проценетата ќелија (A2) во value_if_true аргументот:

    =IF(ISNUMBER(SEARCH($E$1,A2)),A2,"")

    На сликата подолу се прикажани резултатите:

    Акоќелијата содржи специфичен текст: формула чувствителна на големи букви

    Во двата горенаведени примери, формулите се нечувствителни на букви. Во ситуации кога работите со податоци чувствителни на букви, користете ја функцијата FIND наместо SEARCH за да ги разликувате буквите на знаците.

    На пример, следнава формула ќе ги идентификува само наредбите со големи букви „A-“ игнорирајќи ги малите букви „ a-".

    =IF(ISNUMBER(FIND("A-",A2)),"Valid","")

    Ако ќелијата содржи една од многуте текстуални низи (ИЛИ логика)

    За да се идентификуваат ќелиите што содржат најмалку една од многуте работи што ги барате, користете една од следните формули.

    Формула за ПРЕБАРУВАЊЕ АКО ИЛИ БРОЈ

    Најочигледниот пристап би бил да се провери за секоја подниза поединечно и да се има функцијата ИЛИ врати TRUE во логичкиот тест на формулата IF ако се најде барем една подниза:

    IF(OR(ISNUMBER(SEARCH(" string1", cell)), ISNUMBER (SEARCH(" string2", cell))), value_to_return, "")

    Да претпоставиме дека имате листа на SKU во колоната А и вие сакате да ги најдете оние што вклучуваат или „фустан“ или „здолниште“. Можете да го направите тоа со користење на оваа формула:

    =IF(OR(ISNUMBER(SEARCH("dress",A2)),ISNUMBER(SEARCH("skirt",A2))),"Valid ","")

    Формулата работи прилично добро за неколку ставки, но тоа секако не е начинот на кој оди ако сакаш да провериш за многу работи. Во овој случај, подобар пристап би бил користењето на функцијата SUMPRODUCT како што е прикажано во следниот пример.

    SUMPRODUCT ISNUMBER SEARCH формула

    Ако стесправувањето со повеќе текстуални низи, пребарувањето за секоја низа поединечно ќе ја направи вашата формула предолга и тешка за читање. Поелегантно решение би било да се вгради комбинацијата ISNUMBER SEARCH во функцијата SUMPRODUCT и да се види дали резултатот е поголем од нула:

    SUMPRODUCT(--ISNUMBER(SEARCH( strings, cell)))>0

    На пример, за да дознаете дали A2 содржи некој од зборовите внесени во ќелиите D2:D4, користете ја оваа формула:

    =SUMPRODUCT(--ISNUMBER(SEARCH($D$2:$D$4,A2)))>0

    Алтернативно, можете да креирате именуван опсег кој ги содржи низите за пребарување, или директно да ги наведете зборовите во формулата:

    =SUMPRODUCT(--ISNUMBER(SEARCH({"dress","skirt","jeans"},A2)))>0

    Во секој случај, резултатот ќе биде сличен на овој:

    За да го направите излезот попријатен за корисникот, можете да ја вгнездите горната формула во функцијата IF и да го вратите вашиот сопствен текст наместо TRUE/FALSE вредностите:

    =IF(SUMPRODUCT(--ISNUMBER(SEARCH($D$2:$D$4,A2)))>0, "Valid", "")

    Како функционира оваа формула

    Во суштина, користите ISNUMBER заедно со SEARCH како што е објаснето во претходниот пример. Во овој случај, резултатите од пребарувањето се претставени во форма на низа како {TRUE;FALSE;FALSE}. Ако ќелијата содржи барем една од наведените поднизи, ќе има ТОЧНО во низата. Двојниот унарен оператор (--) ги принудува TRUE / FALSE вредностите на 1 и 0, соодветно, и испорачува низа како {1;0;0}. Конечно, функцијата SUMPRODUCT ги собира броевите и ги избираме ќелиите каде резултатот е поголем од нула.

    Акоќелијата содржи неколку низи (И логика)

    Во ситуации кога сакате да ги најдете ќелиите што ги содржат сите наведени текстуални низи, користете ја веќе познатата комбинација на ISNUMBER SEARCH заедно со IF AND:

    IF(AND(ISNUMBER (SEARCH(" низа1", ќелија)), ISNUMBER(SEARCH(" низа2", ќелија))), value_to_return,"")

    На пример, можете да најдете SKU кои содржат и „dress“ и „blue“ со оваа формула:

    =IF(AND(ISNUMBER(SEARCH("dress",A2)),ISNUMBER(SEARCH("blue",A2))),"Valid ","")

    Или, можете да напишете низите во посебни ќелии и упатете се на тие ќелии во вашата формула:

    =IF(AND(ISNUMBER(SEARCH($D$2,A2)),ISNUMBER(SEARCH($E$2,A2))),"Valid ","")

    Како алтернативно решение, можете да ги броите појавите на секоја низа и да проверите ако секое броење е поголемо од нула:

    =IF(AND(COUNTIF(A2,"*dress*")>0,COUNTIF(A2,"*blue*")>0),"Valid","")

    Резултатот ќе биде точно како што е прикажан на сликата од екранот погоре.

    Како да вратите различни резултати врз основа на вредноста на ќелијата

    Во случај да сакате да ја споредите секоја ќелија во целната колона со друга листа на ставки и да вратите различна вредност за секое совпаѓање, користете еден од следниве пристапи.

    Вгнездени IFs

    Логиката на вгнездената формула IF е едноставна како оваа: користите посебна IF функција за тестирање на секоја состојба и враќате различни вредности во зависност од резултатите од тие тестови.

    IF( ќелија=" lookup_text1", " turn_ text1", IF( cell=" lookup_text2", " враќање_ текст2", IF( ќелија=" lookup_text3", " враќање_ текст3", "")))

    Да претпоставиме дека имате листа на ставки во колоната А и сакате да ги имате нивните кратенки во колоната Б. За да го направите тоа, користете ја следнава формула:

    =IF(A2="apple", "Ap", IF(A2="avocado", "Av", IF(A2="banana", "B", IF(A2="lemon", "L", ""))))

    За целосни детали за синтаксата и логиката на вгнезденото IF, погледнете го Excel вгнездено IF - повеќе услови во една формула.

    Формула за пребарување

    Ако барате повеќе компактна и подобро разбирлива формула, користете ја функцијата LOOKUP со пребарување и враќање вредности обезбедени како константи на вертикална низа:

    LOOKUP( ќелија, {" lookup_text1";" lookup_text2";" lookup_text3";…}, {" врати_ текст1";" врати_ текст2";" враќање_ текст3";…})

    За точни резултати, погрижете се да ги наведете вредностите за пребарување по азбучен ред , од А до Ш.

    =LOOKUP(A2,{"apple";"avocado";"banana";"lemon"},{"Ap";"Av";"B";"L"})

    Во споредба со вгнездените IF, формулата Lookup има уште една предност - ги разбира буковите и затоа може да идентификува делумни совпаѓања.

    На пример, ако колоната А содржи неколку сорти од банани, можете да побарате „*banana*“ и да ја вратите истата кратенка („B“) за сите такви ќелии:

    =LOOKUP(A2,{"apple";"avocado";"*banana*";"lemon"},{"Ap";"Av";"B";"L"})

    За повеќе информации, погледнете ја формулата за пребарување како алтернатива на вгнездените IF.

    Формула за Vlookup

    Кога работите со множество на променливи податоци, можеби е попогодно да внесете листа на совпаѓања одделно ќелии и преземете ги со користење на формулата Vlookup,на пр.:

    =VLOOKUP(A2, $D$2:$E$5, 2,FALSE )

    За повеќе информации, ве молиме погледнете го туторијалот Excel VLOOKUP за почетници.

    Вака проверувате дали има ќелија содржи која било вредност или специфичен текст во Excel. Следната недела, ќе продолжиме да ја разгледуваме ќелијата Ако на Excel содржи формули и ќе научиме како да броиме или сумираме релевантни ќелии, да копираме или отстраниме цели редови што ги содржат тие ќелии и многу повеќе. Ве молиме останете прилагодени!

    Вежбајте работна книга

    Excel ако ќелијата содржи - примери на формула (датотека .xlsx)

    Мајкл Браун е посветен технолошки ентузијаст со страст за поедноставување на сложените процеси користејќи софтверски алатки. Со повеќе од една деценија искуство во технолошката индустрија, тој ги усоврши своите вештини во Microsoft Excel и Outlook, како и Google Sheets и Docs. Блогот на Мајкл е посветен на споделување на своето знаење и експертиза со другите, обезбедувајќи лесни за следење совети и упатства за подобрување на продуктивноста и ефикасноста. Без разлика дали сте искусен професионалец или почетник, блогот на Мајкл нуди вредни сознанија и практични совети за да го извлечете максимумот од овие основни софтверски алатки.