
Fórmula genérica
=INDIRECT("'("&workbook&")"&sheet&"'!"&ref)
Resumo
Para construir uma referência de planilha dinâmica - uma referência a outra pasta de trabalho criada com uma fórmula baseada em variáveis que podem mudar - você pode usar uma fórmula baseada na função INDIRETA.
No exemplo mostrado, a fórmula em E6 é:
=INDIRECT("'("&B6&")"&C6&"'!"&D6)
Explicação
A essência desta fórmula é construir uma referência completa a um intervalo em outra pasta de trabalho como texto e, em seguida, usar a função INDIRETA para converter o texto em uma referência real.
Uma referência a uma planilha externa se parece com isto:
'(amostra data.xlsx) Folha1'! A1
Observe os colchetes (()) ao redor do nome da pasta de trabalho, aspas simples ('') ao redor da planilha + planilha e o ponto de exclamação (!) Que se segue.
Para criar uma referência como esta usando texto, usamos concatenação para unir valores das colunas B, C e D com os colchetes, aspas e ponto de exclamação necessários:
=INDIRECT("'("&B6&")"&C6&"'!"&D6)
O resultado é alimentado em INDIRETO como ref_text:
=INDIRECT("'(sample data.xlsx)Sheet1'!A1")
A função INDIRETO então avalia o texto e o converte em uma referência. O Excel segue a referência e retorna o valor na referência fornecida.
Observação: se a referência for inválida ou se a pasta de trabalho referenciada não estiver aberta, INDIRECT gerará um erro #REF. Você pode detectar esse erro com a função IFERROR e exibir um resultado personalizado, se desejar.