Excel-Überwindung des # VALUE-Fehlers mit der FIND-Funktion

11

In Zelle A1 habe ich "Apple" eingegeben. In B2 gebe ich die Formel ein =FIND("Apple",A:A). Ich bekomme jedoch immer wieder #VALUEFehler. Kann jemand das erklären und wie überwinde ich es?

Gh0sT
quelle
Schauen Sie sich das Suchen von Daten in einer Excel-Tabelle an .
Rickhg12hs
1
Bitte erläutern Sie, was Sie erreichen möchten, damit wir Ihnen helfen können. FINDwird verwendet, um eine Textzeichenfolge innerhalb eines bestimmten Textsatzes zu lokalisieren und dann die Position innerhalb der Textzeichenfolge zurückzugeben. Je nachdem, was Sie versuchen, verwenden Sie möglicherweise die falsche Funktion.
CharlieRB
Ich versuche im Grunde, nach einer Textzeichenfolge innerhalb einer Spalte zu suchen. Die Position des Textes innerhalb der Spalte ist nicht festgelegt. Sollte ich eine andere Funktion verwenden und wo mache ich Fehler FIND?
Gh0sT
Die FIND-Funktion funktioniert, wenn ich stattdessen die Formel in Zelle B1 eingeben würde ... seltsam!
Gh0sT
1
Normalerweise wenden Sie FINDauf eine einzelne Zelle an - wenn Sie =FIND("Apple",A:A)in B2Excel verwenden, wird tatsächlich ein "Array" von Werten zurückgegeben ... aber das, das Sie in der Zelle sehen, ist das Ergebnis aus der Spalte A-Zelle in derselben Zeile, also wenn A2 enthält nicht "Apple" Sie erhalten #WERT!, aber in B1 erhalten Sie eine Nummer - immer noch am besten, um eine einzelne Zelle zu verwenden .....
Barry Houdini

Antworten:

4

Wenn Sie die erste Zelle (Zeile) in der Spalte suchen möchten, die Adas Wort „Apfel“ enthält, möglicherweise als Teil eines größeren Wortes (z. B. „Holzapfel“ oder „Apfelmus“) oder eines Satzes, verwenden Sie

=MATCH("*apple*", A:A, 0)
Scott
quelle
Und da dies den Teil beantwortet, den ich stattdessen verwenden sollte ... markiere ich dies als Antwort ... danke!
Gh0sT
21

Suchen Sie Looks in einer Zelle, nicht in einem Zellbereich. Die Syntaxkomponente in_text betrachtet eine bestimmte Zeichenfolge, aber ein Zellenbereich ist keine Zeichenfolge. Möglicherweise können Sie dies mit einem Array erreichen. Am einfachsten ist es jedoch, eine Finder-Spalte zu erstellen. Erstellen Sie eine Spalte neben der Spalte, in der Sie suchen möchten, und fügen Sie die Formel in jede benachbarte Zelle ein. In B2 lautet die Anweisung inside_text also A2.

=FIND("Apple",A1)


Ich habe das Gefühl, Sie versuchen, die Anzahl der Instanzen des Wortes Apple zu finden. Wenn dies korrekt ist, können Sie stattdessen diese Formel verwenden:

=COUNTIF(A:A,"Apple")

Dies gibt Ihnen jedoch nur eine Zählung aller Instanzen des Wortes Apple in der Spalte A, wobei Apple den gesamten Inhalt dieser Zelle darstellt.


Wenn Sie alle Fälle zählen möchten, in denen eine Zelle Apple enthält, auch wenn sie auch andere Wörter enthält (z. B. Apple Pie), müssen Sie in einer zusätzlichen Spalte zu Ihrer FIND-Anweisung zurückkehren und eine IF-Anweisung verwenden, z diese:

=IF(ISERROR(FIND("Apple",$A2)),0,1)

Dies gibt eine 0 zurück, wenn die FIND-Anweisung zu einem Fehler führt, und andernfalls eine 1. Sie können diese Spalte dann einfach summieren, um die Anzahl der Zellen mit dem Wort Apple irgendwo darin zu ermitteln.

CLockeWork
quelle
Vielen Dank für Ihre Erklärung ... dies beantwortet den Teil, in dem ich mit FIND falsch gelaufen bin.
Gh0sT
0

Analysieren von Werten in einer Zelle mithilfe der Suchfunktion und Überwinden des #VALUE!Ergebnisses

Aufnehmen des Wertes vor dem Fund von "&"

=IF(IFERROR(FIND("&",B:B),0)>0,MID(B:B,1,FIND("&",B:B)-1),TRIM(B:B))

Wertaufnahme nach dem Fund von "&"

=IF(IFERROR(FIND("&",B:B),0)>0,MID(B:B,FIND("&",B:B)+1,99),"")

Erläuterung

  1. Auf Fehler FIND prüfen und durch 0 ersetzen
  2. Test mit externem If
  3. Beheben Sie die Ergebnisse

Beispiel 1

=IF(IFERROR(FIND("&",B:B),0)>0,MID(B:B,FIND("&",B:B)+1,99),"")
  • Zelle enthält Mary & David
  • Der Wert wird 6 für den Fund
  • Ab Position von rechts nach rechts aufnehmen
  • Ergebnis ist "David"

Beispiel: 2

  • Zelle enthält Mary
  • Wert wird 0
  • Ergebnis ist null

Beispiel: 3

Wert vor dem "&" abholen

=IF(IFERROR(FIND("&",B:B),0)>0,MID(B:B,1,FIND("&",B:B)-1),TRIM(B:B))
  • Zelle enthält Mary & David
  • Ergebnis ist Mary
Paul Katzmark
quelle
1
Können Sie Ihrer Antwort einen Kontext hinzufügen? Es ist nicht sehr klar, wie es die ursprüngliche Frage löst.
Burgi
@ Burgi - Im Gegenteil, es ist sehr klar. Paul hat die Find()frustrierende Angewohnheit der Funktion überwunden, einen Fehler zurückzugeben, wenn der Suchtext nicht in der gesuchten Zeichenfolge vorhanden ist. Dies ist eine wertvolle Antwort - Sie sollten sie wie jetzt positiv bewerten, anstatt sie zu bewerten. (Es beantwortet auch die ursprüngliche Frage von OP, wenn auch auf andere Weise.)
InteXX
@InteXX, wenn Sie bemerken, dass der Kommentar im Februar 2016 abgegeben wurde und kurz darauf eine Bearbeitung vorgenommen wurde. Wenn Sie der Meinung sind, dass mein Kommentar nicht mehr erforderlich war, sollten Sie ihn markieren.
Burgi
@ Burgi - Das war eine ziemlich gute Bearbeitung. Und verzeihen Sie mir ... Ich sagte aus der Reihe, dass Sie das eine oder andere tun sollten. Ich nahm auch an, dass Sie der Downvoter waren, was ebenfalls unangemessen war. Wenn Sie die Aussage in meinem Profil notieren, werden Sie sehen, dass Downvoting - und Flagging - Dinge sind, an denen ich mich entscheide, nicht teilzunehmen. Aber danke für dein freundliches Angebot.
InteXX