it-swarm.com.de

Überprüfen Sie, ob eine Zelle eine Teilzeichenfolge enthält

Gibt es eine eingebaute Funktion, um zu überprüfen, ob eine Zelle ein bestimmtes Zeichen/eine Teilzeichenfolge enthält? 

Das bedeutet, dass Sie Textfunktionen wie Left/Right/Mid bedingt anwenden können, ohne Fehler auszulösen, wenn keine Trennzeichen vorhanden sind.

202
geotheory

Versuchen Sie es mit diesem:

=ISNUMBER(SEARCH("Some Text", A3))

Dies gibt TRUE zurück, wenn die Zelle A3Some Text enthält.

344
gwin003

Die folgende Formel bestimmt, ob der Text "CHECK" in Zelle C10 angezeigt wird. Wenn dies nicht der Fall ist, ist das Ergebnis leer. Wenn ja, ist das Ergebnis die Arbeit "PRÜFEN".

=IF(ISERROR(FIND("CHECK",C10,1)),"","CHECK")
19
Steve

Für diejenigen, die dies mit einer einzigen Funktion in der IF-Anweisung tun möchten, verwende ich

=IF(COUNTIF(A1,"*TEXT*"),TrueValue,FalseValue)

um zu sehen, ob sich der Teiltext TEXT in Zelle A1 befindet

[HINWEIS: TEXT muss Sternchen haben]

11
dsm

Diese Formel erscheint mir intuitiver:

=SUBSTITUTE(A1,"SomeText","") <> A1

dies gibt TRUE zurück, wenn "SomeText" in A1 enthalten ist. 

Die Formeln IsNumber/Search und IsError/Find, die in den anderen Antworten erwähnt wurden, funktionieren zwar, aber ich muss mir immer die Hilfe ansehen oder zu oft in Excel experimentieren.

9
Warren Stevens

Überprüfen Sie die FIND()-Funktion in Excel. 

Syntax:

FIND( substring, string, [start_position])

Gibt #VALUE! zurück, wenn der Teilstring nicht gefunden wird. 

8
paras_doshi

Ich mag die Antwort von Rink.Attendant.6. Ich möchte eigentlich nach mehreren Strings suchen und habe es so gemacht:

Zuerst die Situation: Namen, die aus Bauträgern oder Community-Namen bestehen können, und ich muss die Builder als eine Gruppe zusammenfassen. Dafür suche ich nach dem Wort "Erbauer" oder "Konstruktion" usw. So - 

=IF(OR(COUNTIF(A1,"*builder*"),COUNTIF(A1,"*builder*")),"Builder","Community")
1
Givings

Dies ist eine alte Frage, aber eine Lösung für Benutzer, die Excel 2016 oder neuer verwenden, besteht darin, die Notwendigkeit für geschachtelte Strukturen zu beseitigen, indem die neue Bedingung IFS( condition1, return1 [,condition2, return2] ...) verwendet wird. 

Ich habe es formatiert, um es visuell klarer zu machen, wie es für den Fall dieser Frage verwendet werden kann:

=IFS(
ISERROR(SEARCH("String1",A1))=FALSE,"Something1",
ISERROR(SEARCH("String2",A1))=FALSE,"Something2",
ISERROR(SEARCH("String3",A1))=FALSE,"Something3"
)

Da SEARCH einen Fehler zurückgibt, wenn eine Zeichenfolge nicht gefunden wurde, habe ich sie mit einer ISERROR(...)=FALSE umschlossen, um die Wahrheit zu prüfen und den gewünschten Wert zurückzugeben. Es wäre großartig, wenn SEARCH zur besseren Lesbarkeit 0 anstelle eines Fehlers zurückgegeben hätte, aber so funktioniert es leider.

Ein weiterer wichtiger Hinweis ist, dass IFS die zuerst gefundene Übereinstimmung zurückgibt und daher die Reihenfolge wichtig ist. Wenn zum Beispiel meine Zeichenfolgen Surf, Surfing, Surfs als String1,String2,String3 oben waren und meine Zellenzeichenfolge Surfing, würde sie auf den ersten Begriff statt auf den zweiten Begriff passen, da der Teilstring Surf ist. Daher müssen gemeinsame Nenner der letzte Platz in der Liste sein. Meine IFS müsste Surfing, Surfs, Surf bestellt werden, um korrekt zu funktionieren (das Austauschen von Surfing und Surfs würde auch in diesem einfachen Beispiel funktionieren), aber Surf muss der letzte sein.

0
Shawn