Excel 2016: fórmula para obter dados de uma planilha diferente

2

ajuda com esta fórmula complicada é muito apreciada.

  ='[DATA.xlsm]2018'!$G$6   *this formula works, but . . .

Spreadsheet with formula Spreadsheet with Data

Eu preciso da fórmula para determinar onde encontrar os dados. Veja a imagem. A fórmula na coluna VALUE B. As informações de QTR na coluna A informam onde procurar os dados na imagem.

Os quatro campos correspondentes do QTR são D1, I1, N1, S1. Então o OFFSET é de 3 colunas (por exemplo: D1 = 1Q18 e col G é a coluna de dados, col L para 2Q18, etc) e a linha OFFSET é 5 (significando linha 6). {Esperançosamente OFFSET (5,3) está correto}

Na linha 10 eu preciso da fórmula em B10 para ler 1Q18 em A10 e {know} para ir para '[DATA.xlsx] 2018' e descobrir que "1Q18" é D1 e então usar o OFFSET (5,3) para encontrar o valor "1,80"

Quando chegarmos à linha 14 da planilha FORMULA, verá "1Q19" em A14 e {know} para ir para "[DATA.xlsx] 2019". Cada ano tem uma nova planilha nomeada pelo ano de 4 dígitos.

Espero ter sido claro o suficiente e espero que as imagens PNG sejam visíveis. Agradecemos antecipadamente a toda e qualquer ajuda.

    
por GregM 28.08.2018 / 22:32

1 resposta

1

Você está muito perto, precisa OFFSET . Mas você também precisa MATCH no trimestre você está olhando para cima. Eu dividi a fórmula em 2 células para que você possa ver peça por peça, mas uma vez que você a entende, você pode facilmente combinar as duas.

Adotei um conjunto falso de dados (usei uma planilha chamada "Data" na mesma pasta de trabalho): .

Emseguida,ligueiparaaoutraplanilha"Report". Na folha de relatório, você primeiro deseja MATCH do trimestre que está procurando em uma posição em sua planilha de dados. MATCH tem a definição:

MATCH(lookup_value, lookup_array, [match_type])

Portanto, definimos o lookup_value para o trimestre que você está procurando, o lookup_array para o conjunto de dados e o match_type para 0 (correspondência exata). Note que isso só funciona em uma única matriz (linha ou coluna), você não pode fornecer uma grade 2D de células. Isso nos dará uma posição relativa na matriz, 1 indexada (primeiro item retorna 1, não 0).

Em seguida, usamos essas informações com OFFSET . A definição para offset é esta:

OFFSET(reference, rows, cols, [height], [width])

Nesse caso, referência é uma única célula. Você não precisa fornecer uma matriz ou grade de células. Então no meu caso eu passo Data!$B$1 . Para rows , precisamos compensar 2 linhas abaixo. A quantidade de colunas é mais complicada. Uma vez que a função MATCH deu como uma posição de referência que começa em 1, já estamos nos movendo para o segundo mês. Portanto, para cols , precisamos dos resultados de MATCH mais 2 .

Então, finalmente, temos uma folha de relatório semelhante a esta:

    
por 29.08.2018 / 02:00