Fórmula de Excel: obtener el valor de la última celda no vacía -

Fórmula genérica

=LOOKUP(2,1/(A:A""),A:A)

Resumen

Para encontrar el valor de la última celda no vacía en una fila o columna, puede usar la función BUSCAR en esta fórmula sorprendentemente compacta. Como ventaja adicional, esta fórmula no es una fórmula de matriz y no es volátil.

Explicación

La clave para comprender esta fórmula es reconocer que el lookup_value de 2 es deliberadamente mayor que cualquier valor que aparecerá en el lookup_vector.

  1. La expresión A: A "" devuelve una matriz de valores verdaderos y falsos: (VERDADERO, FALSO, VERDADERO,…).
  2. Luego, el número 1 se divide por esta matriz y crea una nueva matriz compuesta de 1 o dividir por cero errores (# DIV / 0!): (1,0,1,…). Esta matriz es lookup_vector.
  3. Cuando no se puede encontrar lookup_value, LOOKUP coincidirá con el siguiente valor más pequeño.
  4. En este caso, lookup_value es 2, pero el valor más grande en lookup_array es 1, por lo que la búsqueda coincidirá con el último 1 de la matriz.
  5. BUSCAR devuelve el valor correspondiente en result_vector (es decir, el valor en la misma posición).

Lidiar con los errores

Si hay errores en el lookup_vector, especialmente si hay un error en la última celda no vacía, esta fórmula debe ajustarse. Este ajuste es necesario porque los criterios "" devolverán un error si una celda contiene un error. Para solucionar este problema, utilice ISBLANK con NOT:

=LOOKUP(2,1/(NOT(ISBLANK(A:A))),A:A)

Último valor numérico

Para obtener el último valor numérico, puede agregar la función ISNUMBER como esta:

=LOOKUP(2,1/(ISNUMBER(A1:A100)),A1:A100)

Posición del último valor

Si desea obtener la posición (en este caso, el número de fila) del último valor, puede probar una fórmula como esta:

=LOOKUP(2,1/(A:A""),ROW(A:A))

Aquí alimentamos los números de fila del mismo rango en la búsqueda del vector de resultado y recuperamos el número de fila de la última coincidencia.

Articulos interesantes...