Kazalo
Če imate seznam besedila in želite poiskati celice ter vrniti vrednosti na podlagi seznama, boste morali sestaviti formulo, saj Excel ne ponuja preprostega načina za to. V tem članku sem obravnaval to vprašanje in navedel pet različnih formul za izvedbo te operacije, tako da lahko izberete idealno za svoj položaj in vrnete vrednost, če celica vsebuje določeno besedilo.s seznama.
Prenesi delovni zvezek za prakso
Delovni zvezek, ki sem ga uporabil v tem članku, lahko prenesete z naslednjega gumba in ga vadite sami.
Če celica vsebuje besedilo iz seznama List.xlsx
Uvod v funkcije, uporabljene v tem članku
Formule, ki sem jih uporabil tukaj, uporabljajo naslednje funkcije:
- Funkcija COUNTIFS:
Ta funkcija šteje celice, ki ustrezajo več merilom. Funkcija COUNTIFS je naslednji.
=COUNTIFS (območje1, merila1, [območje2], [merila2], ...)
- obseg1 - 1. območje za ocenjevanje.
- merila1 - Merilo, ki se uporablja za 1. območje.
- range2 [neobvezno]: Drugo območje deluje enako kot območje 1.
- merila2 [neobvezno]: Merilo, ki se uporabi na 2. območju. Ta funkcija omogoča največ 127 razponi in pari meril .
- Funkcija TEXTJOIN:
Ta funkcija združuje besedilne vrednosti z ločilom. Funkcija TEXTJOIN je naslednji.
=TEXTJOIN (delimiter, ignore_empty, text1, [text2], ...)
- razmejitev: Ločilo med besedili, ki jih bo funkcija združila.
- ignore_empty: Ta argument določa, ali funkcija ne upošteva praznih celic ali ne.
- besedilo1: 1. besedilna vrednost (ali razpon).
- text2 [neobvezno]: 2. besedilna vrednost (ali razpon).
- Funkcija MATCH:
Ta funkcija pridobi položaj elementa v polju. Funkcija MATCH je naslednji.
=MATCH (lookup_value, lookup_array, [match_type])
- lookup_value: Vrednost, ki se ujema z lookup_array .
- lookup_array: Razpon celic ali referenca na polje.
- match_type [neobvezno]: 1 = natančno ali naslednje najmanjše, 0 = natančno ujemanje, -1 = natančno ali naslednje največje. Privzeto je match_type=1.
- Funkcija INDEX:
Ta funkcija pridobi vrednosti v seznamu ali tabeli na podlagi lokacije. Funkcija INDEX je naslednji.
=INDEX (polje, številka vrstice, [številka kolona], [številka območja])
- polje: Razpon celic ali konstanta polja.
- številka vrstice: Položaj vrstice v referenci.
- col_num [neobvezno] : Položaj stolpca v referenci.
- area_num [neobvezno]: Referenčno območje, ki ga je treba uporabiti.
- Funkcija IFERROR:
Ta funkcija ujame in obravnava napake. Sintaksa funkcije Funkcija IFERROR je naslednji.
=IFERROR (vrednost, value_if_error)
- vrednost: Vrednost, referenca ali formula za preverjanje napake.
- value_if_error: Vrednost, ki se vrne, če je najdena napaka.
- Funkcija iskanja:
Ta funkcija pridobi lokacijo besedila v nizu. Funkcija iskanja je naslednji.
=SEARCH (find_text, within_text, [start_num])
- find_text : Ta argument določa, katero besedilo je treba poiskati.
- within_text: To določa, kje se najde besedilo.
- start_num [neobvezno]: S tem določite, od katerega položaja v besedilnem nizu boste šteli položaj določenega besedila. Neobvezno in privzeto je 1 od leve.
5 formul za vračanje vrednosti v Excelu, če celica vsebuje določeno besedilo s seznama
V tem naboru podatkov bom poskušal predstaviti dejanski primer. Tu so predstavljene nekatere pijače. Čipsi , Hladne pijače in Žita so tri kategorije pijač v tem podatkovnem nizu. V enem stolpcu, imenovanem Vsi izdelki , so ime in kategorije pijač povezani skupaj. dve od teh kategorij, Čipsi in . Hladne pijače , so prav tako n Seznam stolpec. Na podlagi Seznam se v drugem stolpcu prikaže želeni izhod.
1. Združite funkcije COUNTIF, IF & amp; OR, da vrnete vrednost, če celica vsebuje besedilo s seznama
To je najbolj uporabna formula, če želite vrniti vrednost celotne celice po ujemanju.
Tu sem pridobil vrednosti celic Izdelki ki so se ujemali z Seznam merila za stolpce in jih pokazal Izdelek na podlagi tega seznama stolpec.
Formula je naslednja:
=IF(OR(COUNTIF(B5,"*"&$E$5:$E$6&"*")),B5,"")
Razčlenitev formule:
=IF(OR(COUNTIF(B5,"*"&$E$5:$E$6&"*")),B5,"")
Tu je Znak zvezdica ( * ) je nadomestni znak. Iskal je " Čipsi " in "Hladne pijače" znotraj podreza Celica B5 ki je "
Ruffles - čips
"
niz.
-
=IF(OR(COUNTIF("Ruffles - Chips",*Chips*, *Cold Drinks*)), B5, "")
Spletna stran COUNTIF funkcija je vrnila ena za vsako ujemanje podreza. "
Čipsi
"
se nahaja v Celica B5 , vrne { 1:0 }.
=IF(OR({1;0}), B5, "")
Spletna stran ALI funkcija vrne TRUE vrednost, če je kateri koli od argumentov TRUE V tem primeru je ena (1)= TRUE .
=IF(TRUE, "Ruffles - Chips", "")
Kot IF vrednost funkcije je TRUE , vrne prvi argument, ki je želeni rezultat.
Končni Izhod : Ruffles - čips
Opomba:
Tukaj sem prikazal celico, ki se je ujemala, vendar lahko prikažete kateri koli izhod, kot želite, tako da spremenite IF funkcije izhod z želenim izhodom.
=IF(OR(COUNTIF(B5, "*"&$E$5:$E$6& "*")),TRUE,FALSE)
Preberite več: Če celica vsebuje besedo, potem pripišite vrednost v Excelu (4 formule)
2. Uporabite kombinacijo IF-OR s funkcijo SEARCH, da vrnete vrednost z več pogoji
Tu sem pridobil vrednosti celic Izdelki ki so se ujemali z Seznam merila za stolpce in jih pokazal Izdelek na podlagi tega seznama stolpec.
Formula je naslednja:
=IF(OR(ISNUMBER(SEARCH($E$5,B5)),ISNUMBER(SEARCH($E$6,B5))),B5,"")
Razčlenitev formule:
=IF(OR(ISNUMBER(SEARCH($E$5,B5)),ISNUMBER(SEARCH($E$6,B5))),B5,"")
Spletna stran ISKANJE funkcija je poiskala vrednosti Seznam stolpec v Celica B5 . za " Čipsi " se je vrnil 11 ki je začetni položaj podreza. Hladne pijače , se je vrnila napaka.
=IF(OR(ISNUMBER(11),ISNUMBER(SEARCH(#VALUE))),B5,"")
Spletna stran ISNUMBER pretvorjena funkcija 11 v . TRUE vrednost in napako v FALSE vrednost.
=IF(OR(TRUE,FALSE)),B5,"")
Spletna stran ALI funkcija vrne TRUE vrednost, če je kateri koli od argumentov TRUE . Ker je TRUE vrne tudi argument TRUE vrednost v tem primeru.
=IF(TRUE, "Ruffles - Chips","")
Kot IF vrednost funkcije je TRUE , vrne prvi argument, ki je želeni rezultat.
Končni rezultat: Ruffles - čips
Opomba:
- Tukaj sem prikazal celico, ki se je ujemala, vendar lahko prikažete kateri koli izhod, ki ga želite, tako da spremenite IF funkcije izhod z želenim izhodom.
=IF(OR(ISNUMBER(SEARCH($E$5,B5)),ISNUMBER(SEARCH($E$6,B5))),1,0)
- Glavna prednost te formule je, da ne gre za formulo za polje, vendar ni priporočljiva, če imate veliko celic v Seznam saj morate vnesti vsako celico Seznam ročno.
- Za primere, v katerih se razlikujejo velike in male črke, lahko uporabimo spodnjo formulo, ki temelji na Funkcija FIND namesto ISKANJE funkcijo.
=IF(OR(ISNUMBER(FIND($E$5,B5)),ISNUMBER(FIND($E$6,B5))),B5,"")
Preberite več: Excel Če celica vsebuje besedilo, potem vrnite vrednost (8 preprostih načinov)
Podobna branja:
- Kako sešteti, če celica vsebuje določeno besedilo v Excelu (6 načinov)
- Uporaba VLOOKUP, če celica vsebuje besedo v besedilu v Excelu
- Kako poiskati besedilo v območju Excel & amp; vrnite sklic na celico (3 načini)
3. Uporaba formule TEXTJOIN za vračanje vrednosti v drugo celico, če ima celica besedilo s seznama
Ta formula je uporabna, kadar želite prikazati, kateri niz ali nize iz Seznam usklajeno.
Vrednosti celic sem pridobil iz SEZNAM stolpcu, kjer se ujemajo z Izdelek in jih prikazal v vrednosti Matched iz Seznam stolpec.
Formula je naslednja:
=TEXTJOIN(", ",TRUE,IF(COUNTIF(B5, "*"&$E$5:$E$6& "*"), $E$5:$E$6,""))
Razčlenitev formule:
=TEXTJOIN(", ",TRUE,IF(COUNTIF(B5, "*"&$E$5:$E$6& "*"),$E$5:$E$6,""))
Tu je Znak zvezdice ( * ) je nadomestni znak. Iskal je " Čipsi " in "Hladne pijače" znotraj celice B5, ki je " Ruffles - čips " niz.
TEXTJOIN(", ",TRUE,IF(COUNTIF("Ruffles - Chips",*Chips*, *Cold Drinks*),$E$5:$E$6,""))
Spletna stran COUNTIF funkcija vrne ena za vsako ujemanje podreza. Ker " Čipsi " se nahaja v Celica B5 , vrne { 1:0 }.
TEXTJOIN(", ",TRUE,IF({1;0},$E$5:$E$6,""))
Spletna stran IF funkcija je vrnila samo " Čipsi " vrednost, saj je bila le prva vrednost njegovega argumenta ena = Resnično .
TEXTJOIN(", ",TRUE,{"Chips";""})
Spletna stran TEXTJOIN funkcija tukaj ni naredila ničesar, saj je samo ena vrednost iz Seznam Če bi bilo primerjanih več vrednosti, bi bile vrnjene vse vrednosti z vejicami (,) med njimi kot ločilom.
Končni izdelek: čipi
Preberite več: Če celica vsebuje besedilo, potem dodajte besedilo v drugo celico v Excelu
4. Uporaba formule INDEX MATCH za vračanje vrednosti, če celica vsebuje določeno besedilo
To je alternativa za TEXTJOIN Ta formula prikazuje tudi, kateri niz ali nize iz Seznam usklajeno.
Vrednosti celic sem pridobil iz SEZNAM stolpcu, kjer se ujemajo z Izdelek in jih prikazal v vrednosti Matched iz Seznam stolpec.
Formula je naslednja:
=IFERROR(INDEX($E$5:$E$6, MATCH(1, COUNTIF(B5, "*"&$E$5:$E$6& "*"), 0)),"")
Razčlenitev formule:
=IFERROR(INDEX($E$5:$E$6,MATCH(1,COUNTIF(B5, "*"&$E$5:$E$6& "*"),0)),"")
Tu je Znak zvezdice ( * ) je nadomestni znak. Iskal je " Čipsi " in " Hladne pijače " v podredu znotraj Celica B5 ki je " Ruffles - čips " niz.
IFERROR(INDEX($E$5:$E$6,MATCH(1,COUNTIF("Ruffles - Chips",*Chips*,*Cold Drinks*),0)),"")
Spletna stran COUNTIF funkcija je vrnila eno za vsako ujemanje podreza. Ker " Čipsi " se nahaja v Celica B5 , vrne { 1:0 }.
IFERROR(INDEX($E$5:$E$6,MATCH(1,{1;0}),0)),"")
Spletna stran MATCH funkcija je vrnila ena, saj obstaja samo ena vrednost " Čipsi ", ki se ujema.
IFERROR(INDEX($E$5:$E$6,1),"")
Spletna stran INDEX funkcija je vrnila " Čipsi ", saj je bila vrednost v Seznam polje.
IFERROR("Chips","")
Tu je IFERROR se uporablja za obdelavo napake, ki se pojavi, če ni zadetkov.
Končni izdelek: čipi
Opomba:
Tukaj sem prikazal celico, ki se je ujemala, vendar lahko prikažete kateri koli izhod, kot želite, tako da spremenite IF funkcije izhod z želenim izhodom.
Preberite več: Excelova formula Če celica vsebuje besedilo, potem vrnite vrednost v drugo celico
5. Uporabite funkcijo EXACT z IF in TEXTJOIN
To je še ena rešitev za to težavo v različnih situacijah. Tukaj sem pridobil vrednost celice iz stolpca Seznam z enim članom. To vrednost ujemamo z izdelkom in vse ujemajoče se vrednosti prikažemo v eni celici.
Formula je naslednja:
=TEXTJOIN(", ",TRUE,IF(EXACT(C5:C14,$F$5),B5:B14,""))
Razčlenitev formule :
EXACT(C5:C14,$F$5)
Ta del preveri, katere vrednosti Razpon C5:14 se ujemajo z Celica F5 in vrnite TRUE in . FALSE .
IF(EXACT(C5:C14,$F$5),B5:B14,"")
Ta del vrne imena, za katera dobimo TRUE .
TEXTJOIN(", ",TRUE,IF(EXACT(C5:C14,$F$5),B5:B14,""))
Na koncu združite vsa imena z vejico za vsakim imenom.
Hitre opombe
Vse te formule (razen druge) so formule v polju. To pomeni, da morate pritisniti Ctrl+Shift+Enter namesto da bi pritisnili samo Vnesite gumb za vnos te formule. Če pa ste Office 365 uporabnika, potem jih lahko uporabite tako, da pritisnete samo Vstopite.
Zaključek
V tem članku sem za različne primere zožil različne formule za vračanje vrednosti, če celica vsebuje določeno besedilo s seznama. Upam, da vam je uspelo najti rešitev za vašo težavo. Če imate kakršne koli predloge ali vprašanja, pustite komentar. Poleg tega lahko obiščete naš blog za več takšnih člankov.