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

Fórmula Excel para obter o primeiro valor não zerado no cabeçalho da coluna de linha e retorno

Estou a tentar encontrar uma fórmula onde possa olhar para um intervalo de colunas dentro de uma linha e retornar o cabeçalho da coluna nessa linha onde ocorre o primeiro valor não zero, movendo da esquerda para a direita.

Abaixo está uma captura de ecrã dos meus dados: 9 = 10/31/2011 10 = 11/30/2011 11 = 11/30/2011 12 = 12/31/2011

Os resultados que gostaria de ver na coluna H seriam os seguintes, para cada linha:

Já brinquei com algumas fórmulas de array e procurei através de funções, mas ainda não encontrei nenhum sucesso. Espero que outro excelente feiticeiro possa ter uma ideia.

Quero evitar escrever um UDF por agora, se puder.

Respostas (4)

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

Claro, experimente este

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

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

Aceitei a resposta acima mas queria mostrar a outra forma que encontrei para o fazer, no caso de ajudar alguém.

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

Também se poderia escrever isto como:

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

Bem ! se a exigência é apenas colocar valores de J8 : N8 na coluna H, então Copiar e transpor (Opção Colar) deverá resolver o problema.

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

Não foi possível fazer funcionar o acima referido, pois a fórmula devolveria a maior coluna (número) que não fosse zero. Eu utilizei =MATCH(SMALL(J10:N10,1),J10:N10,0). O pequeno ignora os valores zero.