Hogyan adjuk vissza az értéket az Excelben, ha a cella szöveget tartalmaz a listából származó szövegből

  • Ossza Meg Ezt
Hugh West

Ha van egy szöveges listája, és a listán alapuló cellákban szeretne keresni és értékeket visszaadni, akkor képletet kell készítenie, mivel az Excel nem biztosít erre egyszerű módot. Ebben a cikkben foglalkozom ezzel a kérdéssel, és öt különböző képletet adtam meg a művelet elvégzéséhez, hogy kiválaszthassa a helyzetének megfelelőt, és visszaadja az értéket, ha a cella tartalmaz bizonyos szöveget.egy listáról.

Gyakorlati munkafüzet letöltése

Az alábbi gombra kattintva letöltheted a munkafüzetet, amelyet ebben a cikkben használtam, és gyakorolhatsz vele.

Ha a cella tartalmaz szöveget a List.xlsx-ből

Bevezetés a cikkben használt funkciókhoz

Az itt használt képletek a következő függvényeket használják:

  • A COUNTIFS funkció:

Ez a függvény a több kritériumnak megfelelő cellákat számolja. A szintaxis a COUNTIFS funkció a következő.

=COUNTIFS (range1, criteria1, [range2], [criteria2], ...)

  • range1 - Az 1. értékelendő tartomány.
  • kritériumok1 - Az 1. tartományra vonatkozó kritérium.
  • range2 [opcionális]: A 2. tartomány ugyanúgy viselkedik, mint a range1.
  • kritérium2 [opcionális]: A 2. tartományban használandó kritérium. Ez a funkció legfeljebb 127 értéket engedélyez. tartományok és kritériumpárok .
  • A TEXTJOIN funkció:

Ez a függvény szöveges értékeket köt össze egy elválasztójellel. A szintaxis a TEXTJOIN funkció a következő.

=TEXTJOIN (delimiter, ignore_empty, text1, [text2], ...)

  • elhatároló: A szövegek közötti elválasztójel, amelyet a függvény kombinálni fog.
  • ignore_empty: Ez az argumentum határozza meg, hogy a függvény figyelmen kívül hagyja-e az üres cellákat vagy sem.
  • text1: 1. szöveges érték (vagy tartomány).
  • text2 [opcionális]: 2. szöveges érték (vagy tartomány).
  • A MATCH funkció:

Ez a függvény egy elem pozícióját kapja meg egy tömbben. A szintaxis a MATCH funkció a következő.

=MATCH (lookup_value, lookup_array, [match_type])

  • lookup_value: A megfeleltetendő érték a lookup_array .
  • lookup_array: Egy cellatartomány vagy egy tömbhivatkozás.
  • match_type [opcionális]: 1 = pontos vagy a következő legkisebb, 0 = pontos egyezés, -1 = pontos vagy a következő legnagyobb. Alapértelmezés szerint a match_type=1.
  • Az INDEX funkció:

Ez a függvény egy listában vagy táblázatban lévő értékeket kapja meg a hely alapján. A szintaxis a INDEX funkció a következő.

=INDEX (array, row_num, [col_num], [area_num])

  • tömb: Cellák tartománya vagy egy tömbi konstans.
  • row_num: A sor pozíciója a hivatkozásban.
  • col_num [opcionális] : Az oszlop pozíciója a hivatkozásban.
  • area_num [opcionális]: A referencia tartomány, amelyet használni kell.
  • Az IFERROR funkció:

Ez a függvény hibacsapdákat állít fel és kezeli a hibákat. A szintaxis a IFERROR funkció a következő.

=IFERROR (érték, érték_if_hiba)

  • érték: Az érték, hivatkozás vagy képlet, amelyet hiba esetén ellenőrizni kell.
  • value_if_error: A hiba esetén visszaadandó érték.
  • A KERESÉS funkció:

Ez a függvény a szöveg helyét kapja meg egy karakterláncban. A szintaxis a SEARCH funkció a következő.

=SEARCH (find_text, within_text, [start_num])

  • find_text : Ez az argumentum adja meg, hogy milyen szöveget keressen.
  • within_text: Ez adja meg, hogy hol találja meg a szöveget.
  • start_num [opcionális]: Ezzel megadod, hogy a szöveges karakterlánc melyik pozíciójától számolod a megadott szöveg pozícióját. Opcionális és alapértelmezett értéke 1 balról.

5 képlet az Excel értékének visszaadásához, ha egy cella tartalmaz bizonyos szöveget egy listából származó listából

Megpróbálok egy valós példát bemutatni ebben az adatkészletben. Néhány italt ábrázolunk itt. Chips , Hideg italok , és Gabonafélék az italok három kategóriája ebben az adatkészletben. Egyetlen oszlopban, az úgynevezett Minden termék , az italok neve és kategóriái össze vannak kapcsolva. Két ilyen kategória, Chips és Hideg italok , szintén n a Lista oszlop. A Lista oszlopban, a kívánt kimenet a második oszlopban jelenik meg.

1. Kombinálja a COUNTIF, IF & OR függvényeket az érték visszaadásához, ha egy cella tartalmaz egy szöveget egy listából.

Ez a leghasznosabb képlet, ha a teljes cella értékét szeretné visszaadni az egyezés után.

Itt a cellák értékeit a következő cellákból hívtam le Termékek amely megegyezik a Lista oszlop kritériumai és megmutatta őket a Termék e lista alapján oszlop.

A képlet a következő:

=IF(OR(COUNTIF(B5,"*"&$E$5:$E$6&"*")),B5,"")

Formula bontás:

  • =IF(OR(COUNTIF(B5,"*"&$E$5:$E$6&"*")),B5,"")

Itt a Csillag jel ( * ) egy helyettesítő karakter. A " Chips " és "Hideg italok" részlánc belül B5 sejt ami " Ruffles - Chips " zsinór.

  • =IF(OR(COUNTIF("Ruffles - Chips",*Chips*, *Hideg italok*)), B5, "")

A COUNTIF függvény minden egyes részlánc egyezéshez visszaadott egyet. Mivel a " Chips " megtalálható a B5 sejt , akkor visszatér { 1:0 }.

  • =IF(OR({1;0}), B5, "")

A VAGY függvény visszatér egy TRUE érték, ha bármelyik argumentum TRUE Ebben az esetben egy (1) = TRUE .

  • =IF(TRUE, "Ruffles - Chips", "")

Mivel a IF függvény értéke TRUE , az első argumentumot adja vissza, amely a kívánt kimenet.

Végleges Kimenet : Ruffles - Chips

Megjegyzés:

Itt azt a cellát mutattam meg, amelyik megfelelt, de bármilyen kimenetet meg tudsz mutatni, ha megváltoztatod a IF funkciók kimenete a kívánt kimenettel.

=IF(OR(COUNTIF(B5, "*"&$E$5:$E$6& "*")),TRUE,FALSE)

Bővebben: Ha a cella szót tartalmaz, akkor értéket rendel az Excelben (4 képlet)

2. Használja az IF-OR kombinációt a SEARCH funkcióval a több feltételhez tartozó érték visszaadásához

Itt a cellák értékeit a következő cellákból hívtam le Termékek amely megegyezik a Lista oszlop kritériumai és megmutatta őket a Termék e lista alapján oszlop.

A képlet a következő:

=IF(OR(ISNUMBER(SEARCH($E$5,B5)),ISNUMBER(SEARCH($E$6,B5)))),B5,"")

Formula bontás:

  • =IF(OR(ISNUMBER(SEARCH($E$5,B5)),ISNUMBER(SEARCH($E$6,B5)))),B5,"")

A KERESÉS függvény megkereste a Lista oszlop a B5 sejt . mert " Chips " visszatért 11 amely a részlánc kezdőpozíciója. A következő esetben Hideg italok , hibát adott vissza.

  • =IF(OR(ISNUMBER(11),ISNUMBER(SEARCH(#VALUE)))),B5,"")

A ISNUMBER funkció átalakítva 11 a címre. TRUE értéket és a hibát a HAMIS érték.

  • =IF(OR(TRUE,FALSE)),B5,"")

A VAGY függvény visszatér egy TRUE érték, ha bármelyik argumentum TRUE Mivel van egy TRUE argumentummal, akkor is visszaadja a TRUE érték ebben az esetben.

  • =IF(TRUE, "Ruffles - Chips","")

Mivel a IF függvény értéke TRUE , az első argumentumot adja vissza, amely a kívánt kimenet.

Végeredmény: Ruffles - Chips

Megjegyzés:

  • Itt azt a cellát mutattam meg, amelyik megfelelt, de bármilyen kimenetet megjeleníthet, ha megváltoztatja a IF funkciók kimenete a kívánt kimenettel.
=IF(OR(ISNUMBER(SEARCH($E$5,B5)),ISNUMBER(SEARCH($E$6,B5))),1,0)

  • Ennek a képletnek az a fő előnye, hogy ez nem egy tömbképlet, de nem ajánlott, ha sok cellája van a Lista mivel minden egyes cellába be kell írni a Lista kézzel.
  • Nagy- és kisbetűs helyzetekben az alábbi képletet használhatjuk a FIND funkció a KERESÉS funkció.
=IF(OR(ISNUMBER(FIND($E$5,B5)),ISNUMBER(FIND($E$6,B5))),B5,"")

Bővebben: Excel Ha a cella tartalmaz szöveget, akkor adja vissza az értéket (8 egyszerű módja)

Hasonló olvasmányok:

  • Hogyan lehet összegezni, ha a cella tartalmaz egy adott szöveget az Excelben (6 mód)
  • A VLOOKUP használata, ha a cella egy szót tartalmaz az Excel szövegén belül
  • Hogyan találhat szöveget egy Excel tartományban & cellahivatkozás visszaadása (3 mód)

3. A TEXTJOIN képlet használata egy másik cellában lévő érték visszaadására, ha egy cellában egy listából származó szöveg van

Ez a képlet akkor hasznos, ha meg kell mutatnia, hogy milyen karakterláncot vagy karakterláncokat tartalmaz a Lista egyezett.

Itt a cellák értékeit a következő cellákból hívtam le LIST oszlopban, ahol egyeznek a Termék és megmutatta nekik a Matched értéket a Lista oszlop.

A képlet a következő:

=TEXTJOIN(", ",TRUE,IF(COUNTIF(B5, "*"&$E$5:$E$6& "*"), $E$5:$E$6,"")))

Formula bontás:

  • =TEXTJOIN(", ",TRUE,IF(COUNTIF(B5, "*"&$E$5:$E$6& "*"),$E$5:$E$6,"")))

Itt a Csillag jel ( * ) egy joker karakter. A " Chips " és a "Hideg italok" részlánc a B5 cellán belül, amely " Ruffles - Chips " string.

  • TEXTJOIN(", ",TRUE,IF(COUNTIF("Ruffles - Chips",*Chips*, *Hideg italok*),$E$5:$E$6,"")))

A COUNTIF függvény minden egyes részlánc egyezéshez visszaadott egyet. Mivel " Chips " található a B5 sejt , akkor visszatér { 1:0 }.

  • TEXTJOIN(", ",TRUE,IF({1;0},$E$5:$E$6,""))

A IF függvény csak a " Chips " értéket, mivel csak az argumentum első értéke volt egy = Igaz .

  • TEXTJOIN(", ",TRUE,{"Chips";""})

A TEXTJOIN függvény itt nem csinált semmit, mivel csak egy értéket a Lista Ha sok értéket kellett volna megfeleltetni, akkor az összeset visszaadta volna, vesszővel (,) elválasztóként.

Végtermék: chipek

Bővebben: Ha a cella tartalmaz szöveget, akkor adjon hozzá szöveget egy másik cellában az Excelben

4. INDEX MATCH képlet használata az érték visszaadásához, ha a cella tartalmaz egy adott szöveget

Ez egy alternatívája a TEXTJOIN Ez a képlet azt is megmutatja, hogy milyen karakterlánc vagy karakterláncok a Lista egyezett.

Itt a cellák értékeit a következő cellákból hívtam le LIST oszlopban, ahol egyeznek a Termék és megmutatta nekik a Matched értéket a Lista oszlop.

A képlet a következő:

=IFERROR(INDEX($E$5:$E$6, MATCH(1, COUNTIF(B5, "*"&$E$5:$E$6& "*"), 0)),"")

Formula bontás:

  • =IFERROR(INDEX($E$5:$E$6,MATCH(1,COUNTIF(B5, "*"&$E$5:$E$6& "*"),0)),"")

Itt a Csillag jel ( * ) egy joker karakter. A " Chips " és " Hideg italok " részlánc a B5 sejt ami a " Ruffles - Chips " string.

  • IFERROR(INDEX($E$5:$E$6,MATCH(1,COUNTIF("Ruffles - Chips",*Chips*,*Cold Drinks*),0)),"")

A COUNTIF függvény minden egyes részlánc egyezéshez visszaadott egyet. Mivel " Chips " található a B5 sejt , visszatér { 1:0 }.

  • IFERROR(INDEX($E$5:$E$6,MATCH(1,{1;0}),0))),"")

A MATCH függvény egy értéket adott vissza, mivel csak egy érték létezik " Chips ", amely megfelelt.

  • IFERROR(INDEX($E$5:$E$6,1),"")

A INDEX funkció visszaadta a " Chips ", mivel ez volt az érték a Lista tömb.

  • IFERROR("Chips","")

Itt a IFERROR függvényt használjuk a hiba kezelésére, amely akkor lép fel, ha nincs találat.

Végtermék: chipek

Megjegyzés:

Itt azt a cellát mutattam meg, amelyik megfelelt, de bármilyen kimenetet meg tudsz mutatni, ha megváltoztatod a IF funkciók kimenete a kívánt kimenettel.

Bővebben: Excel-képlet Ha a cella szöveget tartalmaz, akkor az értéket egy másik cellában adja vissza

5. EXACT funkció alkalmazása IF és TEXTJOIN segítségével

Ez egy másik megoldás erre a problémára különböző helyzetekben. Itt a lista oszlopból egyetlen taggal kértem a cella értékét. Ezt az értéket összevetjük a termékkel, és az összes egyező értéket egyetlen cellában mutattuk meg.

A képlet a következő:

=TEXTJOIN(", ",TRUE,IF(EXACT(C5:C14,$F$5),B5:B14,""))

Képlet bontás :

  • EXACT(C5:C14,$F$5)

Ez a rész ellenőrzi, hogy a C5:14 tartomány egyezik a F5 cella és visszatér TRUE és HAMIS .

  • IF(EXACT(C5:C14,$F$5),B5:B14,"")

Ez a rész visszaadja a neveket, amelyekre megkapjuk TRUE .

  • TEXTJOIN(", ",TRUE,IF(EXACT(C5:C14,$F$5),B5:B14,"")))

Végül, ez az összes nevet összekapcsolja, minden név után egy vesszővel.

Gyors megjegyzések

Ezek a képletek itt (a 2. kivételével) mind tömbképletek. Ez azt jelenti, hogy meg kell nyomni a Ctrl+Shift+Enter ahelyett, hogy csak a Írja be a címet. gombot a képlet megadásához. De ha Ön egy Office 365 felhasználó, akkor alkalmazhatja őket, ha egyszerűen megnyomja a Lépjen be.

Következtetés

Ebben a cikkben különböző esetekre szűkítettem le a különböző képleteket, amelyek akkor adnak vissza értéket, ha egy cella egy listából egy adott szöveget tartalmaz. Remélem, sikerült megoldást találnia a problémájára. Kérem, hagyjon megjegyzést, ha bármilyen javaslata vagy kérdése van. Továbbá, meglátogathatja a mi blog további ilyen cikkekért.

Hugh West nagy tapasztalattal rendelkező Excel-oktató és elemző, több mint 10 éves tapasztalattal az iparágban. Számvitel és pénzügy szakos alapdiplomát, valamint üzleti adminisztrációból mesterképzést szerzett. Hugh szenvedélye a tanítás, és egyedülálló tanítási megközelítést dolgozott ki, amely könnyen követhető és érthető. Az Excelben szerzett szakértői tudása világszerte több ezer diáknak és szakembernek segített abban, hogy készségeiket és karrierjüket kiválóan teljesítsék. Hugh blogján keresztül megosztja tudását a világgal, ingyenes Excel-oktatóanyagokat és online képzéseket kínálva, hogy segítse az egyéneket és a vállalkozásokat teljes potenciáljuk kibontakoztatásában.