Fórmula do Excel: Referência de planilha dinâmica -

Índice

Fórmula genérica

=INDIRECT(sheet_name&"!A1")

Resumo

Para criar uma fórmula com um nome de folha dinâmico, você pode usar a função INDIRETO. No exemplo mostrado, a fórmula em C6 é:

=INDIRECT(B6&"!A1")

Nota: O objetivo de INDIRETO aqui é construir uma fórmula em que o nome da planilha seja uma variável dinâmica. Por exemplo, você pode alterar o nome de uma planilha (talvez com um menu suspenso) e obter informações de planilhas diferentes.

Explicação

A função INDIRETO tenta avaliar o texto como uma referência da planilha. Isso torna possível construir fórmulas que montam uma referência como texto usando concatenação e usam o texto resultante como uma referência válida.

Neste exemplo, temos nomes de planilhas na coluna B, então unimos o nome da planilha à referência de célula A1 usando concatenação:

=INDIRECT(B6&"!A1")

Após a concatenação, temos:

=INDIRECT("Sheet1!A1")

INDIRETO reconhece isso como uma referência válida à célula A1 na Planilha1 e retorna o valor em A1, 100. Na célula C7, a fórmula é avaliada da seguinte forma:

=INDIRECT(B7&"!A1") =INDIRECT("Sheet2!A1") =Sheet2!A1 =200

E assim por diante, para cada fórmula na coluna C.

Tratamento de espaços e pontuação em nomes de planilhas

Se os nomes das páginas contiverem espaços ou caracteres de pontuação, você precisará ajustar a fórmula para envolver o nome da página entre aspas simples (') desta forma:

=INDIRECT("'"&sheet_name&"'!A1")

onde sheet_name é uma referência que contém o nome da planilha. Para o exemplo nesta página, a fórmula seria:

=INDIRECT("'"&B6&"'!A1")

Observe que este requisito não é específico para a função INDIRETA. Qualquer fórmula que se refira a um nome de página com espaço ou pontuação deve colocar o nome da página entre aspas simples.

Artigos interessantes...