
Resumo
A função INDIRETO do Excel retorna uma referência válida de uma determinada sequência de texto. INDIRETO é útil quando você deseja converter um valor de texto em uma referência de célula válida.
Objetivo
Crie uma referência de textoValor de retorno
Uma referência de planilha válida.Sintaxe
= INDIRETO (ref_text, (a1))Argumentos
- ref_text - uma referência fornecida como texto.
- a1 - (opcional) Um booleano para indicar a referência de estilo A1 ou R1C1. O padrão é TRUE = estilo A1.
Versão
Excel 2003Notas de uso
A função INDIRETO retorna uma referência válida de uma determinada string de texto. INDIRETO é útil quando você deseja converter um valor de texto em uma referência de célula válida. Por exemplo, para criar uma referência à célula A1 a partir do texto, você pode usar INDIRETO assim:
=INDIRECT("A1") // returns reference to A1
O propósito de INDIRETO pode parecer desconcertante à primeira vista (ou seja, por que usar texto quando você pode apenas fornecer uma referência adequada?), Mas existem muitas situações em que a capacidade de criar uma referência a partir de um texto é útil, incluindo:
- Uma fórmula que precisa de um nome de planilha variável
- Uma referência fixa que não mudará mesmo quando linhas ou colunas forem excluídas
- Criação de matrizes numéricas com a função ROW em fórmulas complexas
Nota: INDIRETO é uma função volátil e pode causar problemas de desempenho em planilhas grandes ou complexas.
Nome da planilha variável
No exemplo mostrado acima, INDIRECT é configurado para usar um nome de planilha variável como este:
=INDIRECT(B6&"!A1") // sheet name in B6 is variable
A fórmula em B6, copiada, retorna o valor na célula A1 nas primeiras 5 planilhas usando os nomes das planilhas inseridos na coluna B. Em outras palavras, quando um nome de planilha diferente é inserido na coluna B, um novo resultado é retornado. Com a mesma abordagem, você pode permitir que um usuário selecione um nome de folha com uma lista suspensa e, em seguida, construa uma referência para a folha selecionada com INDIRETO.
Observação: os nomes das páginas que contêm pontuação ou espaço devem ser colocados entre aspas simples ('), conforme explicado neste exemplo. Isso não é específico da função INDIRETA; o mesmo é verdade em todas as fórmulas.
Referência fixa
A referência criada por INDIRECT não mudará mesmo quando células, linhas ou colunas forem inseridas ou excluídas. Por exemplo, a fórmula abaixo sempre se referirá às primeiras 100 linhas da coluna A, mesmo se as linhas nesse intervalo forem excluídas ou inseridas:
=INDIRECT("A1:A100") // will not change
Gerar matriz numérica
Um uso mais avançado de INDIRETO é criar uma matriz numérica com a função ROW como esta:
ROW(INDIRECT("1:10")) // create (1;2;3;4;5;6;7;8;9;10)
Um caso de uso é explicado nesta fórmula, que soma os n valores inferiores em um intervalo.
Você também pode ter essa ideia em fórmulas mais complexas que precisam montar uma matriz numérica "em tempo real". Um exemplo é esta fórmula, projetada para retirar caracteres numéricos de uma string.
Notas
- As referências criadas pelo INDIRECT são avaliadas em tempo real e o conteúdo da referência é exibido.
- Quando ref_text é uma referência externa a outra pasta de trabalho, a pasta de trabalho deve ser aberta.
- a1 é opcional. Quando omitido, a1 é TRUE = referência de estilo A1.
- Quando a1 é definido como FALSE, INDIRECT criará uma referência de estilo R1C1.
- INDIRETO é uma função volátil e pode causar problemas de desempenho.
Vídeos relacionados


