2013-11-08 16:43:38 +0000 2013-11-08 16:43:38 +0000
7
7

Fórmula de Excel para obtener el primer valor no nulo en la fila y devolver el encabezado de la columna

Estoy tratando de encontrar una fórmula en la que pueda mirar un rango de columnas dentro de una fila y devolver el encabezado de la columna en esa fila donde se produce el primer valor distinto de cero, moviéndose de izquierda a derecha.

A continuación se muestra una captura de pantalla de mis datos: 9 = 10/31/2011 10 = 11/30/2011 11 = 11/30/2011 12 = 12/31/2011

Los resultados que querría ver en la columna H serían los siguientes, para cada fila:

He jugado con algunas fórmulas de matrices y he buscado a través de funciones, pero no he encontrado ningún éxito todavía. Espero que otro asistente de Excel pueda tener una idea.

Quiero evitar escribir un UDF por ahora, si puedo.

Respuestas (4)

12
12
12
2013-11-08 17:31:38 +0000

Claro, prueba esto

=INDEX(J$8:N$8,MATCH(TRUE,INDEX(J9:N9<>0,),0))

3
3
3
2013-11-08 17:58:40 +0000

Acepté la respuesta anterior pero quería mostrar la otra forma que encontré para hacerlo, por si le sirve a alguien.

=OFFSET($I$8,0,MATCH(0,J10:N10,1)+1)

También se podría escribir esto como

=INDEX(J$8:N$8,MATCH(0,J9:N9,1)+1)
0
0
0
2015-06-16 09:42:51 +0000

Bueno, si el requisito es sólo colocar los valores de J8 : N8 en la columna H, entonces copiar y transponer (opción de pegar) debería resolver el problema.

-1
-1
-1
2015-04-21 13:03:42 +0000

No pude conseguir que lo anterior funcionara, ya que la fórmula devolvía la columna más grande (número) que era distinta de cero. He utilizado =MATCH(SMALL(J10:N10,1),J10:N10,0). El small ignora los valores cero.