Formulario de contacto

Nombre

Correo electrónico *

Mensaje *

domingo, 6 de septiembre de 2015

BUSCARV para la última aparición

La función BUSCARV es una de las funciones más usadas en Excel y por una muy buena razón, ya que lo que hace es buscar la primera aparición de un valor específico en la primer columna de una matriz de tabla y devuelve, en la misma fila, un valor de otra columna de dicha matriz de tabla. Por lo que es muy útil. Pero dicha función tiene limitaciones. Hoy voy a cubrir una de ellas.

Así que BUSCARV busca la primera aparición de un valor específico, pero y si lo que busco es la última aparición, entonces cómo lo hago??

Cómo buscar la última aparición de una valor en una columna

Imaginemos que tenemos una tabla cómo la siguiente situada en el rango B4:C13.


Esta tabla ha sido registrada como Tabla1 (ver tutorial sobre Tablas aquí). Mediante una simple fórmula con BUSCARV podría buscar la primera aparición del tipo B, por ejemplo y que devolviese el Número correspondiente.

=BUSCARV("B",Tabla1,2,0) = 19

Pero usando esta función no habría manera de obtener el segundo o último valor del tipo B.


Para lograrlo hay que utilizar fórmulas matriciales y la función INDICE. Lo que intentaremos hacer serán dos cosas:

1. Buscar la última aparición del tipo determinado en la primera columna de la Tabla1
2. Y una vez encontrado devolver el Número correspondiente a esa aparición


Bueno, pues veamos cómo realizar todo esto en unos pasos:


  • En el Administrador de Nombres he asignado el nombre Tipo_sel a una celda que contiene el tipo seleccionado, ya sea A,B o C.


  • Ahora veamos la siguiente fórmula de matriz.
{=FILA(Tabla1[Tipo])} o lo que es lo mismo {=FILA($B$5:$B$13)}

Los símbolos {} indican que se trata de una fórmula matricial. Si una vez en la fórmula le damos al F2+F9, vemos la totalidad de la matriz.

En este caso se vería la FILA de cada una de las celdas:

={5;6;7;8;9;10;11;12;13}

ya que la celda B5 es la fila 5 y así sucesivamente hasta la celda B13.


  • Y si quitásemos la función FILA y sólo dejásemos  {=($B$5:$B$13)} tendríamos como resultado (recuerda F2+F9) ={"A";"A";"A";"B";"B";"C";"C";"C";"C"}, que básicamente son todos los valores de la columna Tipo.


Bueno pues ya hemos visto más o menos cómo funcionan la fórmulas de matriz.

  • Ahora introducimos una condición.

{=SI(Tabla1[Tipo]=Tipo_sel,FILA(Tabla1[Tipo]))}

que nos dice que si la celda de la columna Tipo es igual al tipo seleccionado (en mi caso "B") nos devuelva la FILA en la que se encuentra.

El resultado (mediante F2+F9) es 

={FALSO;FALSO;FALSO;8;9;FALSO;FALSO;FALSO;FALSO}

ya que la celda B8 y B9 tienen el valor B, así que devuelve la fila.

------------------------------------------------------------------------------------------------------------------------

RECUERDA QUE:

Tú puedes colaborar para seguir manteniendo este blog de una manera gratuita haciendo varios clics en los anuncios de la página. Como referencia, 2 clics por artículo. Muchas gracias por querer colaborar.

------------------------------------------------------------------------------------------------------------------------



  • Lo que necesitamos es la FILA relativa a mi tabla, por lo que a esos valores le resto la fila del encabezado o B4.
{=SI(Tabla1[Tipo]=Tipo_sel,FILA(Tabla1[Tipo])-FILA(Tabla1[[#Encabezados],[Tipo]]))}

={FALSO;FALSO;FALSO;4;5;FALSO;FALSO;FALSO;FALSO}

  • Esto ya se parece más a lo que yo necesito, ahora con introducir la función MAX  obtendré la última aparición del valor B en la columna Tipo.
{=MAX(SI(Tabla1[Tipo]=Tipo_sel,FILA(Tabla1[Tipo])-FILA(Tabla1[[#Encabezados],[Tipo]])))} = 5

  • Así que ya sabemos cuál es la posición relativa de la última aparición del tipo B en la columna Tipo. Sólo nos queda usar la función INDICE.
{=INDICE(Tabla1,MAX(SI(Tabla1[Tipo]=Tipo_sel,FILA(Tabla1[Tipo])-FILA(Tabla1[#Encabezados]))),2)} = 18




Bueno pues con esto acaba, ya sabéis cómo hacer para crear un BUSCARV para la última aparición. 

Te ha gustado el artículo?


No te olvides de mostrar tu gratitud hacia el autor (yo) mediante una de las 3 siguientes acciones:

1. Puedes invitarme a un café pinchando en la siguiente imagen.

Image result for coffee icon


2. Puedes hacer clic en los anuncios mostrados en la página

3. Puedes recomendar el artículo en Google haciendo clic en g+1 (justo después del artículo), también puedes compartirlo en Facebook, y/o dejar comentarios.

Descarga:


Para descargarse el archivo con el ejemplo ve al siguiente enlace:

BUSCARV para la última aparición

Aprende a crear los mejores dashboards 

Pincha aquí para ver los mejores ejemplos.

Subscríbete y recibe todos las entradas por email


Para ello regístrate suministrando tu email en el sitio "Recibe los trucos en tu email" del menú de la derecha.

O sígueme por las redes sociales





3 comentarios:

  1. una de las peores presentaciones que intentan explicar algo, pero bueno, es lo que hay

    ResponderEliminar
    Respuestas
    1. Pues nada hombre, veo que eres una de esas personas agradecidas en el mundo. Por qué no nos destellas con tu sabiduría? Deberías aprender a ser agradecido en la vida.
      Feedback contructivo siempre, pero ésto???

      Eliminar
    2. El muy pendejo está buscando aprender algo que no sabe y le echa la culpa a otros porque no entiende jajajajajaja. que pague un curso el cabrón

      Eliminar