2016-08-24 2 views
0

Ich habe eine Excel-Datei mit 2 Registerkarten:Excel = Operator funktioniert nicht wie mit mehreren Registerkarten erwartet

Tab1 

ActorID | ActorName 
-------------------- 
4321 | ActorName1 
4322 | ActorName2 
4323 | ActorName3 
4324 | ActorName4 

In dem zweiten Registerkarte ich im Namen des Darstellers setzen will und sehen, ob es im Array

Also habe ich diese Formel verwendet: =(Tab1!A1:A10="ActorName1"), aber ich bekomme FALSE. Wenn ich die gleiche Formel in der ersten Registerkarte (=(A1:A10="ActorName1")) verwende, bekomme ich TRUE.

Ich verstehe nicht, warum ich FALSE, wenn die Formel in einem anderen Register verwendet wird:/

Antwort

2

Die Formel auf der Registerkarte funktioniert nur, wenn der Name, den Sie suchen sind der erste ist. Sie versuchen, ein Array mit einem einzelnen Element zu vergleichen, Excel wird nur auf das erste Element schauen.

Um eine Reihe von Namen zu suchen, verwenden Sie MATCH(). Um TRUE/FALSE zurückzugeben, wickle es in ISNUMBER(), da MATCH eine Zahl zurückgibt, wenn sie gefunden wird, oder einen Fehler, wenn sie nicht gefunden wird.

=ISNUMBER(MATCH("ActorName1",Tab1!A1:A10,0)) 
+0

habe ich es, weil ich es für die Suche mit mehreren Variablen benötigen, wie Sie sehen [hier] (http://www.exceltactics.com/vlookup-multiple-criteria-using-index-match/4/) – MichaelDeBoey

+1

@MichaelDeBoey Okay, aber Sie können es nicht alleine verwenden, es muss in etwas wie MATCH mit Ctrl-Shift-Enter eingewickelt werden, um es zu einer Array-Formel zu machen. Klingt wie du hast ein X-Y Problem. Sie fragen nur einen Teil der Frage. Was ich gesagt habe, beantwortet, was Sie gefragt haben. Bitte sagen Sie uns, was Sie haben und was Sie wollen. Diese Formel gibt true zurück, wenn der Name in der Liste steht, und false, wenn dies nicht der Fall ist. –

+0

OK Ich schätze, ich öffne einfach einen neuen Thread und lösche diesen, um mein Problem in einem Ganzen zu erklären. – MichaelDeBoey

Verwandte Themen