=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)))
)))
¡Hola a todos! Aquí, hay 4 hojas de cálculo diferentes e intento buscar el valor en la celda A4 para buscar que las 4 hojas de cálculo de origen devuelvan los valores correctos.
Cuando pruebo esto, funciona como oro:
INDEX(Sheet1!$B:$B, MATCH(A4, Sheet1!$C:$C,0))
Pero esto no funciona con declaraciones if simples como las que se muestran a continuación, así como con las declaraciones if anidadas. Y no tengo idea de dónde hice mal.
=IF(INDEX(Sheet1!$B:$B, MATCH(A4, Sheet1!$C:$C, 0))=A4,
INDEX(Sheet1!$B:$B, MATCH(A4, Sheet1!$C:$C, 0)),
"NO")
Con esto, cada celda devuelve "NO", que es un valor falso. ¿Podrías echarle un vistazo y decirme qué hice mal? Su atención y tiempo muy apreciados.
Respuesta1
si no se encuentra A4, devolverá un error y no podrá equipararlo con un error sin crear su propio error.
Utilice esto en su lugar:
=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)))
)))