Tomando el penúltimo valor en una columna (Microsoft Excel)
Cedric tiene la necesidad de determinar el valor de la penúltima celda en la columna a la que agrega valores de forma rutinaria. Ha visto fórmulas para tomar el último valor, pero no el penúltimo.
Hay muchas formas de formular fórmulas para abordar esta necesidad. En muchos aspectos, el método que elija dependerá de las características de los datos de la columna. Supongamos que sus datos están en la columna A, que son numéricos y que no hay espacios en blanco en ninguna de las celdas de la columna. En ese caso, podría utilizar la siguiente fórmula:
=INDEX(A:A,COUNT(A:A)-1)
Tenga en cuenta que esta fórmula no devolverá el resultado correcto si hay valores de texto en la columna A, incluso si ese valor de texto está en un encabezado. Si desea compensar el título, puede modificar la fórmula de esta manera. (Tenga en cuenta que solo verifica el rango de A2: A1000. Si sus datos se extienden más allá de la fila 1000, deberá modificar el rango especificado).
=INDEX(A2:A1000,COUNT(A2:A1000)-1)
Si sus datos numéricos pueden contener celdas vacías, entonces cualquiera de las siguientes fórmulas funcionará bien:
=OFFSET(INDIRECT("A"&MATCH(9^9,A:A)),-1,0) =INDEX(A:A,MATCH(9.9E+23,A:A,1)-1,1) =INDEX(A:A,(MATCH(LOOKUP(10000,A:A),A:A)-1),1) =INDEX(A:A,AGGREGATE(14,6,ROW(A:A)*A:A/A:A,2))
Debe reconocer que si la penúltima celda de la columna está vacía, estas fórmulas devolverán 0. (Bueno, excepto por la fórmula que usa la función AGREGAR. Devuelve el valor en la primera celda no vacía antes la penúltima celda.)
Si sus datos en la columna A pueden contener números o texto (pero aún sin celdas vacías), entonces necesita una fórmula diferente. Cualquiera de estos servirá:
=INDEX(A:A,COUNTA(A:A)-1,1) =INDIRECT("A"&COUNTA(A:A)-1)
Si puede haber celdas vacías en sus datos, entonces puede usar cualquiera de los siguientes:
=INDEX(A:A,MATCH(LOOKUP(2,1/(A:A<>""),A:A),A:A,0)-1) =INDEX(A:A,LOOKUP(2,1/(A:A<>""),ROW(A:A))-1)
Nuevamente, si la penúltima celda está vacía, la fórmula devuelve 0.
Finalmente, también puede usar el siguiente tipo de fórmula, siempre que sus celdas en la columna usen un rango con nombre (en este caso MyData).
Sin embargo, recuerde que a medida que agrega más información a la columna, deberá asegurarse de que el rango con nombre incluya los datos agregados.
=INDEX(MyData,ROWS(MyData)-1)
Debe tener en cuenta que prácticamente todas las fórmulas mencionadas en este consejo usan un -1 en ellas. Esto indica que no desea la última celda del rango, sino la penúltima («una arriba» desde la parte inferior del rango).
Si desea un desplazamiento diferente de la parte inferior del rango, puede cambiar esta parte de cada fórmula. Por ejemplo, si quisiera 2 celdas hacia arriba desde la parte inferior del rango, cambiaría todas las instancias de -1 a -2.
ExcelTips es su fuente de formación rentable en Microsoft Excel.
Este consejo (1523) se aplica a Microsoft Excel 2007, 2010, 2013 y 2016.