Tenho um arquivo Excel com uma lista de tarefas em uma planilha (chamada "Tarefas") e outra coisa em outra planilha (chamada "Resultados") que faz referência às Tarefas
por exemplo em "Resultados" algumas referências como esta:
=Tasks!A1
=Tasks!A2
=Tasks!A20
=Tasks!A28
Digamos que eu queira um conjunto alternativo de dados, vamos chamá-lo de outra planilha chamada "Tarefas Alt"
Em vez de atualizar cada ponteiro para "Tarefas", há uma maneira de referenciar uma célula que diga à minha fórmula a qual planilha referenciar, eu só preciso alterá-la uma vez? Mais ou menos como ter uma única célula como variável?
Você pode usar este código VBA:
Coloque-o no módulo padrão.
Em células
D2
eE2
, você coloca os nomes das planilhas que deseja substituir nas fórmulas.Lembre-se de que se o nome da planilha contiver um espaço, você deve também cercá-lo com apóstrofos.
Até onde eu sei, é preciso usar a
INDIRECT()
função para criar a referência dinâmica para extrair dados de planilhas específicas.Observe que há algumas desvantagens em usar a função acima:
INDIRECT()
ela é volátil por natureza e sempre recalculará sempre que houver uma alteração na pasta de trabalho aberta.