
Fórmula genérica
=SUM(INDIRECT(table&"(column)"))
Resumo
Para construir uma fórmula com uma referência dinâmica a um nome de Tabela do Excel, você pode usar a função INDIRETO com concatenação conforme necessário. No exemplo mostrado, a fórmula em L5 é:
=SUM(INDIRECT(K5&"(Amount)"))
Que retorna a soma dos valores para três tabelas denominadas "Oeste", "Central" e "Leste".
Explicação
Esta fórmula se comporta como estas fórmulas mais simples:
=SUM(West(Amount)) =SUM(Central(Amount)) =SUM(East(Amount))
No entanto, em vez de codificar a tabela em cada fórmula SUM, os nomes das tabelas são listados na coluna K e as fórmulas na coluna L usam concatenação para montar uma referência para cada tabela. Isso permite que a mesma fórmula seja usada em L5: L7.
O truque é a função INDIRETA para avaliar a referência. Começamos com:
=SUM(INDIRECT(K5&"(Amount)"))
que se torna:
=SUM(INDIRECT("West"&"(Amount)"))
e depois:
=SUM(INDIRECT("West(Amount)"))
A função INDIRETA então resolve a string de texto em uma referência estruturada adequada:
=SUM(West(Amount))
E a função SUM retorna o resultado final, 27.500 para a região Oeste.
Nota: INDIRETO é uma função volátil e pode causar problemas de desempenho em pastas de trabalho maiores e mais complexas.