Fórmula do Excel: obtenha os números relativos das linhas no intervalo -

Fórmula genérica

(=ROW(range)-ROW(range.firstcell)+1)

Resumo

Para obter um conjunto completo de números de linha relativos em um intervalo, você pode usar uma fórmula de matriz com base na função ROW. No exemplo mostrado, a fórmula em B5: B11 é:

(=ROW(B5:B11)-ROW(B5)+1)

Observação: esta é uma fórmula de matriz que deve ser inserida com Control + Shift + Enter. Se você estiver inserindo isso na planilha (e não dentro de outra fórmula), faça uma seleção que inclua mais de uma linha, insira a fórmula e confirme com Control + Shift + Enter.

Esta fórmula continuará a gerar números relativos, mesmo quando o intervalo for movido. No entanto, não é uma boa escolha se as linhas precisam ser classificadas, excluídas ou adicionadas, porque a fórmula da matriz evitará alterações. As opções de fórmula explicadas aqui funcionarão melhor.

Explicação

A primeira função ROW gera uma matriz de 7 números como este:

(5;6;7;8;9;10;11)

A segunda função ROW gera uma matriz com apenas um item como este:

(5)

que é então subtraído da primeira matriz para produzir:

(0;1;2;3;4;5;6)

Finalmente, 1 é adicionado para obter:

(1;2;3;4;5;6;7)

Versão genérica com intervalo nomeado

Com um intervalo nomeado, você pode criar uma versão mais genérica da fórmula usando a função MIN ou a função INDEX. Por exemplo, com o intervalo denominado "lista", você pode usar MIN assim:

(ROW(list)-MIN(ROW(list))+1)

Com INDEX, buscamos a primeira referência no intervalo nomeado e usando ROW nisso:

(=ROW(list)-ROW(INDEX(list,1,1))+1)

Freqüentemente, você verá fórmulas de "linha relativa" como esta dentro de fórmulas de matriz complexas que precisam de números de linha para calcular um resultado.

Com SEQUENCE

Com a função SEQUENCE, a fórmula para retornar números de linha relativos para um intervalo é simples:

=SEQUENCE(ROWS(range))

A função ROWS fornece a contagem de linhas, que é retornada à função SEQUENCE. SEQUENCE, então, cria uma matriz de números, começando com o número 1. Portanto, seguindo o exemplo original acima, a fórmula abaixo retorna o mesmo resultado:

=SEQUENCE(ROWS(B5:B11)) // returns (1;2;3;4;5;6;7)

Observação: a fórmula SEQUENCE é uma nova função de matriz dinâmica disponível apenas no Excel 365.

Artigos interessantes...