Me gustaría hacer una BUSCARV en varias hojas (para las cuales puedo definir un orden de prioridad estricto) pero quiero ignorar la respuesta cuando está en blanco. He encontrado esta respuesta:
Aplicar la fórmula BUSCARV a varias hojas
El problema en esta respuesta es que estoy absolutamente seguro de que todas mis entradas coincidirán en la primera hoja, pero muchas de ellas coincidirán con celdas en blanco. Cuando ese sea el caso, me gustaría que la fórmula busque en la segunda hoja, en la tercera, etc. hasta que no quede ninguna hoja. La cantidad de hojas que tengo es razonable (no será superior a 10), por lo que no me importa una solución que requiera escribir explícitamente todas las hojas en la fórmula.
Muchas gracias.
Respuesta1
Excel realmente no maneja bien las búsquedas 3D (entre hojas). La única forma de hacer esto, que yo sepa, es verificar cada celda y ver si está en blanco, si no, pasar a la siguiente. A continuación se muestra un ejemplo con 3 hojas.
=if(esbanco(vlookup(f1,hoja1!A2:B10,2,false)),if(isbank(vlookup(f1,hoja2!A2:B10,2,false)),if(isbank(vlookup(f1,hoja3 !A2:B10,2,false)),"no_non_blank",vlookup(f1,sheet3!A2:B10,2,false)),vlookup(f1,sheet2!A2:B10,2,false)),vlookup(f1 ,hoja1!A2:B10,2,falso))
Quizás sea mejor tener una columna por hoja, hacer todas las búsquedas y luego elegir el valor de la primera columna que no esté en blanco. Sería mucho más legible.
Respuesta2
Usaría el complemento Power Query para esto. Puede importar los datos de cada hoja de destino como una consulta independiente y filtrar las filas en blanco. Luego puede crear otra consulta comenzando desde su hoja base y agregando las hojas de destino a su vez, usando el comando Fusionar:
http://office.microsoft.com/en-au/excel-help/merge-queries-HA104149757.aspx?CTT=5&origin=HA103993872
Podrás entregar el resultado final a una Tabla de Excel.
Es mucho más fácil trabajar con Power Query que con expresiones complejas de búsqueda virtual anidadas. En cada paso podrás ver instantáneamente los datos resultantes.