Primeiro de tudo,
CONCATENATE(
thing1,
thing2,
thing3)
pode ser abreviado
thing1
&
thing2&
thing3
Eles significam o mesmo, mas a segunda forma (obviamente) ocupa menos espaço, então algumas pessoas podem achar mais fácil ler.
Sua pergunta parece ser um pouco vaga - você não disse quando quis fazer referência à mesma pasta de trabalho e quando deseja acessar uma outra. Então preencha o espaço em branco. E como você parece ter a parte VLOOKUP
funcionando, a questão se resume à parte de referência. Em outras palavras, como se adaptar
INDIRECT(CONCATENATE("'[Datafile.xlsx]", B1, "'!$A1:F500"))
que podemos abreviar para
INDIRECT("'[Datafile.xlsx]" & B1 & "'!$A1:F500")
Então, tente
INDIRECT("'" & IF(
condition, "", "[Datafile.xlsx]") & B1 & "'!$A1:F500")
onde condição é a condição sob a qual você deseja usar o arquivo atual. Em palavras, concatene uma aspa simples ( '
), condicionalmente o nome da pasta de trabalho (entre parênteses) ou não , então o nome da planilha (suponho que seja o que está em B1
), uma segunda citação, um ponto de exclamação e o intervalo de células.