Innehållsförteckning
I Excel kan omständigheterna kräva att man kontrollerar om en cell innehåller en viss text eller inte. Idag ska vi visa hur du kontrollerar om en cell innehåller specifik text. För den här sessionen använder vi Excel 2019, men du kan gärna använda din favoritversion.
Först och främst ska vi lära känna datasetet som är basen för våra exempel.
.
Vi har en tabell som innehåller information om flera elever och deras betyg. Med hjälp av detta dataset ska vi kontrollera om en cell innehåller en viss text eller inte.
Observera att detta är ett grundläggande dataset för att hålla det enkelt. I ett verkligt scenario kan du stöta på ett mycket större och mer komplext dataset.
Arbetsbok för praktiska övningar
Du är välkommen att ladda ner arbetsboken från länken nedan.
Excel om cellen innehåller specifik text.xlsxOm cellen innehåller specifik text
1. Cell innehåller endast specifik text
Vi kan titta i en cell som kanske (eller kanske inte) innehåller exakt den text (sträng) som vi letar efter. Det kommer inte att finnas några ytterligare strängar med den.
I vårt dataset är t.ex. Betyg: kolumnen har Godkänd eller . Misslyckad i varje cell. Inga extra ord eller strängar finns där. Vi kan alltså kontrollera om en cell i denna kolumn innehåller Godkänd eller . Misslyckad .
Här kommer vi till exempel att kontrollera om en cell innehåller "Godkänd" eller inte och sedan lägga till en anmärkning i den nyligen införda Anmärkningar kolumn.
När du hör ord som "check" är en av de första funktionerna som du tänker på IF . IF funktionen kör ett logiskt test och returnerar ett binärt värde (TRUE eller FALSE).
Vi skriver formeln med hjälp av IF för att kontrollera om cellen innehåller texten "Godkänd" eller inte.
=IF(D4="Passed","Promoted","")
Här har vi ställt in en logisk operation D4="Godkänd"
som jämför om D4 innehåller "Godkänd" eller inte.
För if_true_value vi har ställt in "Promoted", kommer den att visas som ett resultat när den har hittat cellen som innehåller texten. För tillfället finns det ingen if_false_value tillhandahålls.
D4 cellen har söktexten "Godkänd", så formeln returnerade den if_true_value .
Skriv nu formeln för resten av cellerna. Du kan använda AuoFill funktionen också.
Du kan se att vår formel har returnerat if_true_value , "Promoted", perfekt för de celler som innehåller "Passed".
Om någon av cellerna innehåller "passed" i stället för "Passed" kommer det också att fungera.
Läs mer: Excel söker efter text i ett område
2. Cell innehåller specifik text (partiell matchning)
Ibland kan vi behöva söka efter en specifik text i en cell som en delsträng. I det här avsnittet kommer vi att se hur man gör det.
Vi söker till exempel efter en sträng (gruppnamn) i cellerna i ID kolumn.
Här har vi infört ett par kolumner som passar in i vårt exempel.
Du kan se för den Söksträng kolumnen har vi slagit ihop raderna. Följ denna artikel om att slå ihop rader för att få information om tekniken.
I. Matchning genom FIND-funktionen (skiftlägeskänslig)
I det tidigare avsnittet har vi använt oss av IF för att kontrollera texten (med hjälp av det logiska uttrycket). Denna funktion kommer att användas även om vi behöver andra stödfunktioner.
HITTA är en funktion som vi kommer att koppla ihop med IF för att kontrollera om en cell innehåller den specifika texten åtminstone som en delsträng.
Vi har till exempel valt en sträng "AB" som vi ska söka i celler från ID kolumn.
Låt oss nu skriva formeln för B4 cell.
=IF(ISNUMBER(FIND($E$4,B4)), "Funnen", "Inte funnen")
Här kan du se funktionen ISNUMMER . ISNUMMER returnerar TRUE när en cell innehåller ett nummer, och FALSK om inte
Vi använde denna funktion eftersom den kontrollerar om HITTA Funktionens resultat är ett tal eller inte. Den returnerar ett boolskt värde.
När den ISNUMMER returnerar TRUE då IF funktionen kommer att utlösa if_true_value (funnen) , i annat fall är det if_false_value (Ej funnen) .
Här för den första cellen, den ISNUMBER-FIND återkom TRUE och det slutliga resultatet blev "Found".
Låt oss extrahera gruppnamnet. För detta använder vi MID Funktionen extraherar tecken från mitten av en given sträng.
=IF(ISNUMBER(FIND($E$4,B4)),MID(B4,FIND($E$4,B4),2),"")
Först har vi kontrollerat om cellen innehåller den specifika texten, sedan har vi i den if_true_value fältet har vi ställt in MID för att hämta värdet. HITTA inom MID anger utgångspunkten och sedan 2 tecken, vilket hämtar gruppnamnen med två tecken.
Vi har hittat gruppnamnet när cellen innehåller texten.
Sedan HITTA är skiftlägeskänslig, kommer den inte att exekvera if_true_value för "ab".
Skriv koden för resten av cellerna. Du kommer att hitta ett gruppnamn som har skrivits exakt som Söksträng .
Ändra den Söksträng värdet, hittar du det uppdaterade resultatet.
II. Matchning med hjälp av sökfunktionen (oberoende av stor bokstavsbeteckning)
I det tidigare avsnittet har vi observerat ett tillvägagångssätt som är skiftlägeskänsligt. För att hålla saker och ting flexibla kan vi anta ett tillvägagångssätt som inte är skiftlägeskänsligt. För detta kan vi använda SÖKNING funktionen kommer att vara användbar.
SÖKNING returnerar platsen för en textsträng inom en annan. Det fungerar på samma sätt som HITTA funktionen, men den är skiftlägesoberoende.
Formeln är följande
=IF(ISNUMBER(SEARCH($E$4,B4)),MID(B4,SEARCH($E$4,B4),2),"")
Det verkar likadant som att det i HITTA Den enda ändringen är att vi har ersatt HITTA med SÖKNING Resten av formeln är densamma och fungerar på exakt samma sätt.
Vi har hittat gruppnamnet när cellen innehåller texten.
Skriv formeln för resten av cellerna. Du hittar alla gruppnamn som har "AB" i någon form.
Om vi skriver "ab" som Söksträng kommer den ändå att hämta dessa värden.
III. Matchning med hjälp av COUNTIF-funktionen (oberoende av stor bokstavsbeteckning)
Ett annat sätt att kontrollera att cellen innehåller specifik text som en delsträng är att kombinera IF och COUNTIF Även denna metod kommer att vara skiftlägesoberoende.
Denna COUNTIF funktionen räknar celler i ett intervall som uppfyller ett enda villkor.
Nu blir formeln följande.
=IF(COUNTIF(B4, "*"&$E$4& "*"),MID(B4,SEARCH($E$4,B4),2),"")
Här har vi kontrollerat logiken med hjälp av COUNTIF . Användning COUNTIF Den kontrollerar om räknevärdet är 1 eller inte.
Om COUNTIF ger 1 så är if_true_value ( MID för att extrahera gruppnamnet) returneras. MID delen diskuteras i det tidigare avsnittet.
För 0 från den COUNTIF del, kommer formeln att ge if_false_value (tom cell, för tillfället).
Vi har hittat matchningen och formeln returnerade gruppnamnet när cellen innehåller den specifika texten.
Skriv formeln för resten av cellerna. Du hittar alla gruppnamn som har koden Söksträng i någon form.
Låt oss ändra Söksträng värde, uppdaterade resultat kommer att finnas framför oss.
För mer information COUNTIF om partiell matchning, se artikeln COUNTIF PARTIAL MATCH. Om du är intresserad av partiell matchning med if, kan artikeln IF Partial Match vara till hjälp för dig.
Slutsats
Det var allt för idag. Vi har listat flera metoder för att kontrollera om en cell innehåller en viss text i Excel. Hoppas att du tycker att detta är till hjälp. Kommentera gärna om något verkar svårt att förstå. Låt oss veta om det finns andra metoder som vi kan ha missat här.