BUSCARV reutilizable (BUSCARV)

Contenido

Tenemos una lista de pedidos con números y nombres de productos. Me gustaría, por ejemplo, sacar de la tabla por número de pedido todos los productos que están incluidos en ella. Más o menos así:

 

Maravillosa característica BUSCARV (BUSCARV) en tal situación, solo ayudará parcialmente, porque solo puede extraer datos por la primera coincidencia encontrada, es decir, solo nos dará Manzanas. Para buscar y extraer todos los elementos de la tabla, es mejor usar una fórmula matricial. Como éste:

=ÍNDICE($B$2:$B$16;MENOS(IF($ E $ 2=A2: A16;LÍNEA(B2: B16)-1;»»);LÍNEA()-5))

Se debe ingresar de la siguiente manera:

  1. seleccione las celdas donde se deben mostrar los resultados (en nuestro ejemplo, este es el rango D6: D20)
  2. ingrese (copie la fórmula en la primera celda) del rango
  3. prensa Ctrl + Shift + Participar

Resta de unidades en fragmento CADENA(B2:B16)-1 se hace debido al encabezado de la tabla. Por la misma razón, para compensar el cambio en el rango resultante con respecto al original, se resta el número cinco en el fragmento CADENA()-5

Para ocultar el #NUM! error que aparecerá en celdas vacías en el rango resultante D6:D20, puede usar las funciones de verificación de errores IF y EOSH, reemplazando nuestra fórmula con una un poco más compleja:

=SI(EOSH(ИНДЕКС($B$2:$B$16;НАИМЕНЬШИЙ(ЕСЛИ($E$2=A2:A16;СТРОКА(B2:B16)-1;»»);СТРОКА()-5)));»»;ИНДЕКС($B$2:$B$16;НАИМЕНЬШИЙ(ЕСЛИ($E$2=A2:A16;СТРОКА(B2:B16)-1;»»);СТРОКА()-5)))

En Excel 2007, apareció una función IFERROR más conveniente: le permite resolver el problema de manera más compacta:

= IFERROR (ИНДЕКС($B$2:$B$16;НАИМЕНЬШИЙ(ЕСЛИ($E$2=A2:A16;СТРОКА(B2:B16)-1;»»);СТРОКА()-5));»»)

PS

En la versión en inglés de Excel, estas funciones se verán así:

=INDEX($B$2:$B$16,SMALL(IF($E$2=A2:A16,ROW(B2:B16)-1,»»),ROW()-5))

=IF(ISERR(INDEX($B$2:$B$16,SMALL(IF($E$2=A2:A16,ROW(B2:B16)-1,»»),ROW()-5))),»»,INDEX($B$2:$B$16,SMALL(IF($E$2=A2:A16,ROW(B2:B16)-1,»»),ROW()-5)))

=IFERROR(INDEX($B$2:$B$16,SMALL(IF($E$2=A2:A16,ROW(B2:B16)-1,»»),ROW()-5)),»»)

  • Uso de la función BUSCARV para buscar datos en una tabla
  • Una versión mejorada de la función BUSCARV2 que puede buscar en cualquier columna y no solo en el primer valor
  • Funciones VLOOKUP2 y VLOOKUP3 del complemento PLEX
  • ¿Qué son las fórmulas matriciales y para qué sirven?

 

Deje un comentario