Encontrar el primer número diferente a cero en Excel

Cuando tenemos una lista de números en Excel que incluyen al cero y necesitamos  encontrar el primer número diferente a cero, podemos recurrir a las funciones COINCIDIR e INDICE para obtener el valor correcto.

La función COINCIDIR

La función COINCIDIR hace la comparación de dos valores y nos devuelve la posición del elemento coincidente dentro del rango de búsqueda. Por ejemplo, en la siguiente imagen tengo una lista de números en el rango A2:A11 y en la celda C1 la función COINCIDIR encuentra la posición de la primer coincidencia del número 5:

Encontrar el primer número diferente a cero en Excel

El resultado de la función es el número 7 el cual nos indica que se ha encontrado el número 5 en la posición 7 del rango A2:A11. Es muy importante notar que el número 7 es la posición a partir de la celda A2 y no se refiere al número de fila de la hoja. Ahora bien, necesitamos utilizar la función COINCIDIR para encontrar la posición del primer número diferente a cero y para eso haremos uso de fórmulas matriciales.

La función COINCIDIR como fórmula matricial

Aunque las fórmulas matriciales son un tema avanzado de Excel, tenemos que hacer uso de ellas para resolver la búsqueda que intentamos realizar en esta ocasión. Lo primero que haremos es modificar la fórmula de la celda C1 de la siguiente manera:

=COINCIDIR(VERDADERO,A2:A11>0,0)

Observa que el segundo argumento de la función hace la comparación A2:A11 > 0 lo cual nos devolverá una lista de resultados verdaderos o falsos indicando si el valor de cada celda dentro del rango es mayor a cero. Este tipo de condición que compara un rango con un valor sólo es válido para fórmulas matriciales, así que no intentes utilizarlo de manera regular con la función COINCIDIR o de lo contrario obtendrás un error.

Ya que estaremos evaluando una lista de valores verdaderos y falsos que indican si un valor es mayor a cero, solo debemos encontrar la posición del primero de los valores verdaderos, y por lo tanto el primer argumento de la función COINCIDIR es precisamente el valor VERDADERO. Para que esta fórmula sea matricial debemos introducirla en la barra de fórmulas y pulsar la combinación de teclas Ctrl + Mayús + Entrar. Observa el resultado de la fórmula:

Encontrar el primer valor diferente de cero en Excel

La fórmula matricial de la celda C1 nos devuelve la posición 2 indicando que en dicha celda se ha encontrado el primer valor que cumple con la condición de ser mayor a cero. La posición 2 dentro del rango A2:A11 es la celda A3 la cual tiene el valor 8 que se encuentra inmediatamente después del primer valor cero.

Alternativa sin fórmula matricial

Si mi explicación anterior no te ha quedado muy clara, entonces te mostraré una solución alterna que no utiliza una fórmula matricial. Para eso debemos agregar en una columna auxiliar para conocer si el valor de cada celda es mayor a cero y posteriormente utilizar la función COINCIDIR para encontrar el primer valor verdadero.

Extraer el primer valor mayor a cero de una lista de números

Con este método obtenemos como resultado el valor 2 indicando que dicha posición contiene el primer valor mayor a cero. De manera personal prefiero el método de la fórmula matricial porque nos ahorra la creación de la columna auxiliar, pero en cualquiera de los dos casos obtendremos como resultado la posición del primer número diferente a cero y solo nos faltará obtener el valor de dicha celda y para lo cual utilizaremos la función INDICE.

Encontrar el primer número diferente a cero

La función INDICE obtiene el valor de una celda dentro de una matriz con solo especificar el número de fila. Este número de fila es precisamente lo que obtuvimos de la fórmula anterior y por lo tanto será el segundo argumento de la función INDICE.

=INDICE(A2:A11,COINCIDIR(VERDADERO,A2:A11>0,0))

La función INDICE nos devuelve el valor de la celda cuya posición está indicada por el resultado de la función COINCIDIR. Ya que estoy utilizando la función COINCIDIR en su forma matricial, también deberé introducir esta fórmula utilizando la combinación de teclas Ctrl + Mayús + Entrar para tener el siguiente resultado:

Fórmula para encontrar el primer número diferente a cero

Es así como podemos encontrar el primer número diferente a cero en Excel utilizando las funciones INDICE y COINCIDIR.

Un ejemplo diferente

En los ejemplos mostrados hasta ahora he colocado la lista de números en una columna pero nada impediría que los números estuvieran en una fila ya que sería suficiente con modificar el rango utilizado en la fórmula y además hacer que el resultado de la función COINCIDIR se convierta en el tercer argumento de la función INDICE dejando fijo el número de fila:

Buscar el primer valor diferente de cero en una fila

También debo mencionar que en los ejemplos de este artículo he utilizado solamente números positivos, pero si la lista de números incluye valores negativos solo es necesario cambiar el operador mayor que (>) por el operador de diferencia (<>) para que la fórmula devuelva el primer número diferente a cero ya sea positivo o negativo.