=IF(
A4=INDEX(Sheet1!$B:$B, MATCH(A4, Sheet1!$C:$C, 0)),
INDEX(Sheet1!$B:$B, MATCH(A4, Sheet1!$C:$C,0)),
IF(A4=INDEX(Source1!$A:$A, MATCH(A4, Source1!$B:$B, 0)),
INDEX(Source1!$A:$A, MATCH(A4, Source1!$B:$B, 0)),
IF(A4=INDEX(Source2!$A:$A, MATCH(A4, Source2!$B:$B, 0)),
INDEX(Source2!$A:$A, MATCH(A4, Source2!$B:$B, 0)),
IF(A4=INDEX(Source3!$A:$A, MATCH(A4, Source3!$B:$B, 0)),
INDEX(Source3!$A:$A, MATCH(A4, Source3!$B:$B, 0)))
)))
Hallo zusammen! Hier gibt es 4 verschiedene Tabellen und ich versuche, in Zelle A4 nach Werten zu suchen, um alle 4 Quelltabellen zu durchsuchen und die richtigen Werte zurückzugeben.
Wenn ich das hier versuche, funktioniert es einwandfrei:
INDEX(Sheet1!$B:$B, MATCH(A4, Sheet1!$C:$C,0))
Aber das funktioniert nicht mit einfachen if-Anweisungen wie unten, sowie mit verschachtelten if-Anweisungen. Und ich habe keine Ahnung, was ich falsch gemacht habe.
=IF(INDEX(Sheet1!$B:$B, MATCH(A4, Sheet1!$C:$C, 0))=A4,
INDEX(Sheet1!$B:$B, MATCH(A4, Sheet1!$C:$C, 0)),
"NO")
Damit gibt jede Zelle „NO“ zurück, was ein falscher Wert ist. Könnten Sie sich das ansehen und mir sagen, was ich falsch gemacht habe? Ihre Aufmerksamkeit und Zeit sind sehr willkommen.
Antwort1
Wenn A4 nicht gefunden wird, wird ein Fehler zurückgegeben und Sie können nicht mit einem Fehler gleichsetzen, ohne einen eigenen Fehler zu erzeugen.
Verwenden Sie stattdessen Folgendes:
=IF(
ISNUMBER(MATCH(A4, Sheet1!$C:$C, 0)),
INDEX(Sheet1!$B:$B, MATCH(A4, Sheet1!$C:$C,0)),
IF(ISNUMBER(MATCH(A4, Source1!$B:$B, 0)),
INDEX(Source1!$A:$A, MATCH(A4, Source1!$B:$B, 0)),
IF(ISNUMBER(MATCH(A4, Source2!$B:$B, 0)),
INDEX(Source2!$A:$A, MATCH(A4, Source2!$B:$B, 0)),
IF(ISNUMBER(MATCH(A4, Source3!$B:$B, 0)),
INDEX(Source3!$A:$A, MATCH(A4, Source3!$B:$B, 0)))
)))