Precisa VLOOKUP na planilha na mesma pasta de trabalho com base no valor da célula

Precisa VLOOKUP na planilha na mesma pasta de trabalho com base no valor da célula

Estou construindo uma pasta de trabalho (planilha) que contém planilhas rotuladas por mês; por exemplo, "12 de janeiro", "12 de dezembro" e assim por diante. Preciso que VLOOKUP seja capaz de alterar sua aparência com base no nome de qualquer planilha, sem precisar alterar a fórmula todas as vezes. Encontrei esta resposta e funciona muito bem para VLOOKUPs que estão em pastas de trabalho diferentes que eu também tenho, mas não consigo fazê-la funcionar na mesma pasta de trabalho.

=VLOOKUP(A1, INDIRECT(CONCATENATE("'[Datafile.xlsx]",B1,"'!$A1:F500")), 3, False)

Responder1

Em primeiro lugar,

CONCATENATE(Coisa 1, coisa 2, coisa 3)

pode ser abreviado

                      Coisa 1 & coisa 2 & coisa 3

Eles têm o mesmo significado, mas a segunda forma (obviamente) ocupa menos espaço, então algumas pessoas podem achar mais fácil de ler.

Sua pergunta parece um pouco vaga – você não disse quando deseja fazer referência à mesma pasta de trabalho e quando deseja acessar uma pasta diferente. Então preencha o espaço em branco. E como você parece ter a VLOOKUPparte funcionando, a questão se resume à parte de referência. Em outras palavras, como adaptar

INDIRECT(CONCATENATE("'[Datafile.xlsx]", B1, "'!$A1:F500"))

que podemos abreviar para

INDIRECT("'[Datafile.xlsx]" & B1 & "'!$A1:F500")

Então tente

INDIRECT("'" & IF(doença, "", "[Datafile.xlsx]") & B1 & "'!$A1:F500")

ondedoençaé 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 colchetes)ou não, depois o nome da planilha (presumo que seja isso B1), uma segunda citação, um ponto de exclamação e o intervalo de células.

informação relacionada