miércoles, 14 de enero de 2015

Las funciones ELEGIR y BUSCARV: búsqueda matricial

Meses atrás expliqué una forma de realizar una búsqueda vertical matricial (ver).
La técnica consistía en concatenar los rangos de nuestro origen para conseguir una matriz 'virtual' de donde extraer la información buscada.
Hoy veremos una alternativa empleando la función ELEGIR de forma matricial.
Sobre el planteamiento del ejemplo siguiente:

Las funciones ELEGIR y BUSCARV: búsqueda matricial



La función matricial necesaria es, en la celda F1:
=BUSCARV(E1;ELEGIR({1\2};$A$1:$A$10&$B$1:$B$10;$C$1:$C$10);2;0)


La clave nuevamente es concatenar las columnas de datos $A$1:$A$10&$B$1:$B$10 para recomponer el código buscado... y sin duda el uso de ELEGIR con el que hemos reconstruido un origen de datos virtual de dos campos.
Podemos ver su representación en H1:I10:

Las funciones ELEGIR y BUSCARV: búsqueda matricial



Siendo sobre ese 'rango' sobre el que aplicamos la búsqueda con BUSCARV.
Notemos la potencia de esta función ELEGIR matricial, y es que podríamos reconstruir un rango matricial independientemente del orden del origen de datos real, por ejemplo:

Las funciones ELEGIR y BUSCARV: búsqueda matricial


Observemos nuestra fórmula:
=BUSCARV(E1;ELEGIR({1\2};$C$1:$C$10&$A$1:$A$10;$B$1:$B$10);2;0)
ha bastado recomponer nuestros concatenados en el orden adecuado: $C$1:$C$10&$A$1:$A$10.
Sin ninguna duda una alternativa a nuestra combinación mágica de INDICE+COINCIDIR.

2 comentarios:

  1. Una pregunta. Esto funciona a opartir de qué versión de Excel? Gracias desde ya por tu respuesta. Saludos.

    ResponderEliminar
    Respuestas
    1. Hola,
      es una fórmula matricial con dos funciones estándar... funciona casi desde siempre, desde que existan estas funciones...
      Saludos

      Eliminar

Nota: solo los miembros de este blog pueden publicar comentarios.