it-swarm.com.de

Wie überprüfe ich in Excel, ob eine Zelle in einer Werteliste (einem Zellbereich) enthalten ist?

Ich habe einen Bereich (A3: A10), der Namen enthält, und ich möchte überprüfen, ob der Inhalt einer anderen Zelle (D1) mit einem der Namen in meiner Liste übereinstimmt.

Ich habe den Bereich A3: A10 "some_names" genannt und möchte eine Excel-Formel, die mir je nach Inhalt Wahr/Falsch oder 1/0 gibt.

88
joseph.hainline

Meine bevorzugte Antwort (geändert von Ians) ist:

=COUNTIF(some_names,D1)>0

dies gibt TRUE zurück, wenn D1 mindestens einmal im Bereich some_names gefunden wird, andernfalls FALSE.

(COUNTIF gibt eine ganze Zahl zurück, wie oft das Kriterium im Bereich gefunden wurde.)

66
joseph.hainline

= COUNTIF (some_names, D1)

sollte funktionieren (1, wenn der Name vorhanden ist - mehr, wenn mehr als eine Instanz).

92
pnuts

Ich weiß, dass das OP ausdrücklich feststellte, dass die Liste aus einer Reihe von Zellen stammt, aber andere könnten darauf stoßen, während sie nach einer bestimmten Reihe von Werten suchen.

Mit der Funktion MATCH können Sie auch nach bestimmten Werten und nicht nach einem Bereich suchen. Dies gibt Ihnen die Nummer, mit der dies übereinstimmt (in diesem Fall der zweite Punkt, also 2). Es wird # N/A zurückgegeben, wenn keine Übereinstimmung vorliegt.

=MATCH(4,{2,4,6,8},0)

Sie können auch die ersten vier durch eine Zelle ersetzen. Fügen Sie eine 4 in Zelle A1 ein und geben Sie diese in eine beliebige andere Zelle ein.

=MATCH(A1,{2,4,6,8},0)
26
RPh_Coder

Wenn Sie das countif in eine andere Ausgabe (wie boolean) umwandeln möchten, können Sie auch Folgendes tun:

= IF (COUNTIF (some_names, D1)> 0, TRUE, FALSE)

Genießen!

18
Ian McClellan

Für Abwechslung können Sie MATCH verwenden, z.

=ISNUMBER(MATCH(D1,A3:A10,0))

7
barry houdini

es gibt einen kleinen Trick, der Boolesche Werte zurückgibt, falls der Bereich some_names explizit in "purple","red","blue","green","orange" angegeben werden könnte:

=OR("Red"={"purple","red","blue","green","orange"})

Beachten Sie, dass dies KEINE Array-Formel ist

3
Vrun

Sie können --([range]=[cell]) in einem IF-, SUMIFS- oder COUNTIFS-Argument verschachteln. Zum Beispiel IF(--($N$2:$N$23=D2),"in the list!","not in the list"). Ich glaube, das könnte den Speicher effizienter nutzen.

Alternativ können Sie eine ISERROR um eine VLOOKUP wickeln, die alle um eine IF -Anweisung gewickelt sind. Wie IF( ISERROR ( VLOOKUP() ) , "not in the list" , "in the list!" ).

2
John Skilbeck

Array Formula version (Eingabe mit Strg + Umschalt + Eingabetaste):

=OR(A3:A10=D1)
0
Slai