Indholdsfortegnelse
I Excel kan omstændighederne kræve, at det kontrolleres, om en celle indeholder en bestemt tekst eller ej. I dag vil vi vise dig, hvordan du kan kontrollere, om en celle indeholder en bestemt tekst. I denne session bruger vi Excel 2019, men du er velkommen til at bruge din foretrukne version.
Lad os først lære det datasæt at kende, som er grundlaget for vores eksempler
.
Vi har en tabel, der indeholder flere elevers oplysninger med deres karakterer. Ved hjælp af dette datasæt skal vi kontrollere, om en celle indeholder en bestemt tekst eller ej.
Bemærk, at dette er et grundlæggende datasæt for at holde tingene enkle. I et virkeligt scenarie kan du støde på et meget større og komplekst datasæt.
Arbejdsbog til øvelser
Du er velkommen til at downloade arbejdsbogen fra nedenstående link.
Excel Hvis celle indeholder specifik tekst.xlsxHvis celle indeholder specifik tekst
1. Celle indeholder kun specifik tekst
Vi kan gennemse en celle, som måske (eller måske ikke) kun indeholder præcis den tekst (streng), vi leder efter. Der vil ikke være yderligere strenge med den.
I vores datasæt er f.eks. Karakter kolonnen har Bestået eller Mislykkedes i hver celle. Der er ingen ekstra ord eller strenge. Så vi kan kontrollere, om en celle i denne kolonne indeholder Bestået eller Mislykkedes .
Her vil vi f.eks. kontrollere, om en celle indeholder "Bestået" eller ej, og derefter tilføje en bemærkning ved den nyligt indførte Bemærkninger kolonne.
Når man hører ord som "check", er en af de første funktioner, man tænker på, at IF . IF funktionen udfører en logisk test og returnerer en binær værdi (TRUE eller FALSE).
Lad os skrive formlen ved hjælp af IF for at kontrollere, om cellen indeholder den specifikke tekst "Bestået" eller ej.
=IF(D4="Passed","Promoted","")
Her har vi indstillet en logisk operation D4="Bestået"
der sammenligner, om den D4 indeholder "Bestået" eller ej.
Til if_true_value vi har indstillet "Promoted", vil den blive vist som et resultat, når den har fundet den celle, der indeholder teksten. Foreløbig er der ingen if_false_value er tilvejebragt.
D4 celle har den søgetekst, "Bestået", så formlen returnerede den if_true_value .
Skriv nu formlen for resten af cellerne. Du kan øve dig med AuoFill funktion også.
Du kan se, at vores formel har returneret if_true_value , "Forfremmet", perfekt for de celler, der indeholder "Bestået".
Dette fungerer uden hensyn til store og små bogstaver. Hvis en af cellerne indeholder "passed" i stedet for "Passed", vil det også fungere.
Læs mere: Excel-søgning efter tekst i et område
2. Celle indeholder specifik tekst (delvis match)
Nogle gange kan vi have brug for at søge efter en bestemt tekst i en celle som en delstreng. I dette afsnit vil vi se, hvordan vi kan gøre det.
Vi vil f.eks. søge efter en streng (gruppenavn) i cellerne i ID kolonne.
Her har vi indført et par kolonner, som passer til vores eksempel.
Du kan se for den Søge streng kolonnen har vi slået rækkerne sammen. Følg denne artikel om sammenlægning af rækker for at se teknikkerne.
I. Match via FIND-funktionen (stempelafhængig)
I det tidligere afsnit har vi anvendt IF til kontrol af teksten (ved hjælp af det logiske udtryk). Denne funktion vil blive brugt, selv om vi har brug for andre støttefunktioner.
FIND funktion er en funktion, som vi skal koble sammen med IF for at kontrollere, om en celle indeholder den specifikke tekst i det mindste som en delstreng.
Vi har f.eks. valgt en streng "AB", som vi vil søge i celler fra ID kolonne.
Lad os nu skrive formlen for B4 celle.
=IF(ISNUMBER(FIND($E$4,B4)), "Fundet", "Ikke fundet")
Her kan du se funktionen ISNUMBER . ISNUMBER returnerer TRUE når en celle indeholder et tal, og FALSK hvis ikke
Vi har brugt denne funktion, fordi den kontrollerer, om den FIND funktionens resultat er et tal eller ej. Den returnerer en boolsk værdi.
Når den ISNUMBER returnerer TRUE så er den IF funktionen vil udløse den if_true_value (fundet) , ellers er det if_false_value (ikke fundet) .
Her for den første celle, den ISNUMBER-FIND returneret TRUE og det endelige resultat blev "Found".
Lad os udtrække gruppens navn. Til det formål bruger vi MID Denne funktion udtrækker tegn fra midten af en given streng.
=IF(ISNUMBER(FIND($E$4,B4))),MID(B4,FIND($E$4,B4),2),""")
Først har vi kontrolleret, om cellen indeholder den pågældende tekst, derefter har vi ved if_true_value feltet, har vi sat MID funktion til at hente værdien. FIND på MID giver startpunktet og derefter 2 tegn. Dette vil hente de to tegn i gruppenavnene.
Vi har fundet gruppens navn, når cellen indeholder teksten.
Siden FIND er følsom over for store og små bogstaver, vil den ikke udføre if_true_value for "ab".
Skriv koden for resten af cellerne. Du vil finde et gruppenavn, der er skrevet præcis som Søge streng .
Ændre den Søge streng værdi, finder du det opdaterede resultat.
II. Match via SØG-funktionen (ikke gengivelsesfølsom over for store og små bogstaver)
I det tidligere afsnit har vi observeret en fremgangsmåde, der er case-sensitiv. For at holde tingene fleksible kan vi vedtage en fremgangsmåde, der ikke tager hensyn til store og små bogstaver. I den forbindelse skal SØG funktion vil være nyttig.
SØG returnerer placeringen af en tekststreng inden for en anden. Den fungerer på samme måde som FIND funktionen, men den er ikke skivende.
Formlen er som følger
=IF(ISNUMBER(SEARCH($E$4,B4))),MID(B4,SEARCH($E$4,B4),2),""")
Det synes at ligne det, der til den FIND sektion. Den eneste ændring er, at vi har erstattet FIND med SØG Resten af formlen er den samme og fungerer på nøjagtig samme måde.
Vi har fundet gruppens navn, når cellen indeholder teksten.
Skriv formlen for resten af cellerne, og du finder alle de gruppenavne, der har "AB" i en hvilken som helst form.
Hvis vi skriver "ab" som den Søge streng vil den stadig hente disse værdier.
III. Match ved hjælp af COUNTIF-funktionen (uden hensyn til store og små bogstaver)
En anden måde at kontrollere, om en celle indeholder en bestemt tekst som en delstreng, er at kombinere IF og COUNTIF Denne fremgangsmåde vil også være uafhængig af store og små bogstaver.
Denne COUNTIF funktionen tæller celler i et område, der opfylder en enkelt betingelse.
Nu bliver formlen følgende.
=IF(COUNTIF(B4, "*"&$E$4& "*"),MID(B4,SEARCH($E$4,B4),2),2),""")
Her har vi kontrolleret logikken ved hjælp af COUNTIF . ved hjælp af COUNTIF kontrollerer den, om tælleværdien er 1 eller ej.
Hvis COUNTIF returnerer 1, så vil if_true_value ( MID del til at udtrække gruppens navn) returneres. MID del er omtalt i det foregående afsnit.
For 0 fra den COUNTIF del, vil formlen returnere if_false_value (tom celle, indtil videre).
Vi har fundet et match, og formlen returnerede derefter gruppens navn, når cellen indeholder den specifikke tekst.
Skriv formlen for resten af cellerne. Du vil finde alle de gruppenavne, der har Søge streng i enhver form.
Lad os ændre den Søge streng værdi, vil de opdaterede resultater ligge foran os.
For mere COUNTIF delvise matchningsmetoder kan du læse denne artikel om COUNTIF PARTIAL MATCH. Hvis du er interesseret i delvis matchning med if, kan denne artikel om IF Partial Match være nyttig for dig.
Konklusion
Det er alt for i dag. Vi har listet flere metoder til at kontrollere, om en celle indeholder en bestemt tekst i Excel. Vi håber, at du vil finde dette nyttigt. Du er velkommen til at kommentere, hvis noget virker svært at forstå. Lad os vide andre metoder, som vi måske har overset her.