Tente usar a função CELL como esta
=INDIRECT("'"&$A4&"'!"&CELL("address",E4))
Isso converte E4 em texto para uso na função INDIRECT, mas continuará sendo atualizado quando você arrastar / diminuir
=INDIRECT("'"&$A4&"'!E4")
É necessário usar o valor da célula E4 da planilha com o nome encontrado em A4. Na verdade, funciona. Mas quando eu arrasto essa fórmula para várias colunas / linhas, o A4 atualiza para colunas diferentes, mas o E4 não ... acho que porque está em uma string.
Como posso fazer isso funcionar, tudo que eu tento me dá! REF?
Tente usar a função CELL como esta
=INDIRECT("'"&$A4&"'!"&CELL("address",E4))
Isso converte E4 em texto para uso na função INDIRECT, mas continuará sendo atualizado quando você arrastar / diminuir
Bem, você não ficou muito claro no seu comentário, então acho que será mais simples se eu der algo e você ajustar para as suas necessidades.
Suponho que você tenha a fórmula =INDIRECT("'"&$A4&"'!E4") na planilha Target e na célula A1 .
=INDIRECT("'"&$A4&"'!E4")
Você pode alterá-lo para:
=INDIRECT("'"&$A4&"'!"&CHAR(96+COLUMN()+4)&ROW()+3)
COLUMN() retorna a coluna na qual a fórmula é. Aqui, como a fórmula está na célula A1, COLUMN() retorna 1.
ROW() age da mesma maneira, mas com o número de linhas, e retornará 1 também aqui.
CHAR(96+COLUMN()+4) retornará CHAR(96+1+4) nesse caso, que é a letra E .
ROW()+3 retornará 1+3 , que é 4 .
Concatenar tudo lhe dará E4.
Quando você copia / cola essa fórmula em B1, você recebe:
=INDIRECT("'"&$B4&"'!"&CHAR(96+COLUMN()+4)&ROW()+3)
COLUMN() agora retorna 2 porque está na segunda coluna e CHAR() retornará F .
Como a linha é a mesma, você obtém 4 , para que a célula referenciada se torne F4 .