prucommercialre.com


Última valor distinto de cero en una fila

Brian tiene una fila de números con 240 células. En esta fila, los números están disminuyendo de manera constante y, finalmente, en algún momento de esas células 240, convertido en 0. Los ceros continuarán para llenar las células restantes en la fila. Brian tiene que escribir una ecuación que devolverá el último valor distinto de cero en la fila.

Hay una variedad de maneras en que el valor deseado se puede devolver. (No que siempre parece ser el caso con Excel? Usted puede venir con un montón de maneras de obtener un resultado). En general, se puede usar una fórmula regular o una fórmula de matriz.

Si desea utilizar una fórmula regular, aquí está uno que usted puede probar:

= OFFSET (A6,0, (COUNT (A6: IF6) -COUNTIF (A6: IF6,0)) - 1)

La función de CONTAR.SI cuenta el número de valores cero y la función COUNT determina el número de células en la gama. Restando el uno del otro y ajustando por 1 da el valor de desplazamiento en la "matriz" de las células donde el último mentiras valor distinto de cero. Esta fórmula supone que los valores comienzan en la columna A; si comienzan en una columna diferente, entonces usted tendrá que ajustar el valor proporcionado por la parte COUNT / de CONTAR.SI de la fórmula para representar el desplazamiento de la primera columna.

Aquí hay una variación más corta de la fórmula, basada en hacer un desplazamiento desde el lado derecho de la gama en lugar del lado izquierdo:

= OFFSET (IF6,0, -COUNTIF (A6: IF6,0))

En este caso es importante que IF6 ser el final real de la derecha de la gama. La fórmula funciona contando el número de valores cero en el rango de (todos en el lado derecho de la gama) y luego el cálculo de la dirección de la celda de la última celda (IF6) menos el número de ceros.

Aquí hay una versión que utiliza la función INDEX, en su lugar:

= INDEX (A6: IF6, MATCH (0, A6: IF6,0) -1)

Esta versión es aún más corto, utilizando la función BUSCAR:

= BUSCAR (1,1 / (6: 6> 0), 6: 6)

Las fórmulas de matriz también pueden ser utilizados. (Fórmulas de matriz se introducen pulsando Ctrl + Shift + Enter.) Éste utiliza la función INDIRECTO:

= INDIRECTO ("R6C" y MAX ((A6: IF6> 0) * COLUMNA (A6: IF6)), FALSO)

Esta fórmula de matriz utiliza una interesante aplicación de la función BUSCAR para encontrar el resultado correcto:

= BUSCAR (9.99999999999999E + 307, IF (A6: IF6 <> 0, A6: IF6))

Aquí hay otra fórmula de matriz que se puede utilizar, esta vez utilizando la función OFFSET para encontrar el último valor distinto de cero en la fila 6:

= OFFSET (A6,0, MIN (SI (6: 6 = 0, la columna (6: 6), 300)) - 2)

Aquí hay una variación aún más corto:

= MIN (SI (A6: IF6> 0, A6: IF6))

Todas estas fórmulas presentadas hasta ahora dependen del hecho de que los números en la fila hacen realmente disminuyen-van desde cualquiera que sea el número inicial es de manera constante y van hacia cero. Si los números no disminuyen, entonces usted puede utilizar un tipo diferente de fórmula de matriz para determinar el último valor distinto de cero en la fila:

= INDEX (6: 6, MAX (SI (A6: IF6 <> 0, COLUMNA (A6: IF6))))

La fórmula determina primero la columna máximo en la fila (en este caso la fila 6) que tiene un valor no igual a cero, entonces se utiliza la función de índice para obtener el valor de dicha columna en esa fila.

Como se puede ver, hay bastantes maneras de encontrar el último valor distinto de cero en una fila. Elija el que se le antoje; no hay razón o no en este caso.

ExcelTips es su fuente de capacitación rentable Microsoft Excel. Esta punta (3785) se aplica a Microsoft Excel 97, 2000, 2002, y 2003. Usted puede encontrar una versión de este consejo para la interfaz de cinta de Excel (Excel 2007 y versiones posteriores) aquí: Último valor distinto de cero en una fila.