=ÍNDICE(A2:C6;3;2) retorna o valor da terceira linha e da segunda coluna do intervalo A2:C6. As posições contam a partir da célula superior esquerda do intervalo, então a linha 3 de A2:C6 é a linha 4 da planilha. Mude o 3 ou o 2 e veja o resultado se mover. A função ÍNDICE se chama INDEX em inglês, e a tabela mostra as fórmulas em inglês, com vírgulas; você também pode digitar as fórmulas em português, com ponto e vírgula.
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Product | Category | Price | Row | Column | Result | |
| 2 | Apple | Fruit | $1.20 | 3 | 2 | Vegetable | |
| 3 | Pear | Fruit | $1.50 | ||||
| 4 | Carrot | Vegetable | $0.80 | ||||
| 5 | Bread | Bakery | $2.40 | ||||
| 6 | Milk | Dairy | $1.10 |
=ÍNDICE(A2:C6;E2;F2)E2 tem o número da linha e F2 o número da coluna. A linha 3 é Carrot e a coluna 2 é Category, então G2 mostra Vegetable. Coloque 1 em F2 para ver o nome do produto, ou 6 em E2 para ver #REF!: A2:C6 só tem cinco linhas.
Sintaxe do ÍNDICE
=INDEX(array, row_num, [column_num])
array: o intervalo (ou matriz) de onde ler.row_num: qual linha dele, começando em 1. Use 0 para todas as linhas.column_num: qual coluna, começando em 1. Opcional quando o intervalo é uma única coluna ou uma única linha; use 0 para todas as colunas.
Em uma única coluna, um número basta: =ÍNDICE(A2:A6;4) é o quarto item, Bread. Uma segunda forma, =ÍNDICE((A2:C3;A5:C6);1;1;2), escolhe entre vários intervalos; ela raramente é necessária.
Pegar o enésimo item, ou o último
O ÍNDICE com uma única coluna responde "qual é o item número n". Junto com a CONT.VALORES (COUNTA em inglês), que conta as células preenchidas, ele retorna o último item de uma lista que cresce.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Product | Item number | 2 | |
| 2 | Apple | Nth item | Pear | |
| 3 | Pear | Last item | Milk | |
| 4 | Carrot | |||
| 5 | Bread | |||
| 6 | Milk |
=ÍNDICE(A2:A6;CONT.VALORES(A2:A6))D1 diz 2, então D2 retorna Pear. A CONT.VALORES conta 5 produtos, então D3 retorna o quinto, Milk. Apague Milk e D3 retorna Bread. Em um arquivo de verdade, aponte os dois para um intervalo maior, como A2:A1000, para incluir as linhas novas; a CONT.VALORES só funciona assim quando a coluna não tem células vazias no meio.
Retornar uma linha ou coluna inteira com 0
Um 0 como número da linha significa "todas as linhas", então ÍNDICE(B2:D5;0;2) é a segunda coluna inteira. Dentro de SOMA (SUM), MÉDIA (AVERAGE) ou MÁXIMO (MAX), isso totaliza uma coluna escolhida pelo número.
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Region | Jan | Feb | Mar | Month number | Total | |
| 2 | North | 4,200 | 3,900 | 4,800 | 2 | 15,200 | |
| 3 | South | 3,100 | 3,600 | 3,300 | |||
| 4 | East | 5,200 | 4,700 | 5,600 | |||
| 5 | West | 2,800 | 3,000 | 3,400 |
=SOMA(ÍNDICE(B2:D5;0;F2))O mês 2 é Feb, e G2 soma C2:C5: 15,200. Mude F2 para 3 para março. Uma linha inteira funciona do mesmo jeito: =SOMA(ÍNDICE(B2:D5;3;0)) totaliza East. No Excel 2021 e no Microsoft 365, =ÍNDICE(B2:D5;0;2) sozinho espalha os quatro valores pela planilha. Para escolher a coluna pelo cabeçalho em vez de um número, troque F2 por uma CORRESP, que é o padrão ÍNDICE e CORRESP.
ÍNDICE numa matriz ou num resultado espalhado
O ÍNDICE também lê matrizes que uma fórmula retorna, não só intervalos da planilha. Assim ele tira um item de uma lista ordenada, filtrada ou sem repetições sem precisar escrever a lista antes.
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Product | Category | Price | Most expensive | Bread | |
| 2 | Apple | Fruit | $1.20 | Second | Pear | |
| 3 | Pear | Fruit | $1.50 | Cheapest | Carrot | |
| 4 | Carrot | Vegetable | $0.80 | |||
| 5 | Bread | Bakery | $2.40 | |||
| 6 | Milk | Dairy | $1.10 |
A CLASSIFICARPOR (SORTBY em inglês) retorna os cinco produtos ordenados por preço, e o ÍNDICE pega o item 1 (Bread), o item 2 (Pear) ou, da ordem crescente, o item 1 (Carrot). Mude o preço de Milk para 3 e ele passa a ser o mais caro. Se uma lista espalhada já está na planilha, digamos em H2, o Excel 2021 e o Microsoft 365 deixam você escrever =ÍNDICE(H2#;2) para o segundo item dela.
Prática: totalize o mês escolhido
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Region | Jan | Feb | Mar | Month number | Total | |
| 2 | North | 4,200 | 3,900 | 4,800 | 1 | ||
| 3 | South | 3,100 | 3,600 | 3,300 | |||
| 4 | East | 5,200 | 4,700 | 5,600 | |||
| 5 | West | 2,800 | 3,000 | 3,400 |
Sua vez: Em G2, retorne o total do mês cujo número está em F2 (1 = Jan, 2 = Feb, 3 = Mar), usando o ÍNDICE.
Perguntas frequentes
O que a função ÍNDICE faz no Excel?
Ela retorna o valor em uma posição de um intervalo: =ÍNDICE(A2:C6;3;2) retorna o valor da terceira linha e da segunda coluna de A2:C6. As posições contam a partir da célula superior esquerda do intervalo, não da linha 1 da planilha.
Como pego o último valor de uma coluna com o ÍNDICE?
Use a contagem de células preenchidas como número da linha: =ÍNDICE(B2:B100;CONT.VALORES(B2:B100)) retorna o último valor de uma coluna sem lacunas. Com lacunas, =LOOKUP(2,1/(B2:B100<>""),B2:B100) (a forma em inglês) retorna o último valor não vazio.
Por que o ÍNDICE retorna #REF!?
O número da linha ou da coluna é maior que o intervalo. =ÍNDICE(A2:A6;7) pede o sétimo item de um intervalo de cinco células e retorna #REF!.
Como retorno uma coluna inteira com o ÍNDICE?
Use 0 como número da linha: =ÍNDICE(B2:D5;0;2) retorna toda a segunda coluna. Envolva em uma função para totalizar, como em =SOMA(ÍNDICE(B2:D5;0;2)), ou deixe o resultado se espalhar no Excel 2021 e no Microsoft 365.