
Fórmula genérica
=TRANSPOSE(FILTER(data,logic))
Resumo
Para filtrar dados organizados horizontalmente e exibir o resultado em formato vertical, você pode usar a função FILTER junto com TRANSPOSE. No exemplo mostrado, a fórmula em B10 é:
=TRANSPOSE(FILTER(data,group="fox"))
onde dados (C4: L6) e grupo (C5: L5) são intervalos nomeados.
Explicação
O objetivo é filtrar os dados horizontais no intervalo C4: L6 para extrair membros do grupo "raposa" e exibir os resultados com os dados transpostos para um formato vertical. Por conveniência e legibilidade, temos dois intervalos nomeados para trabalhar: dados (C4: L6) e grupo (C5: L5).
A função FILTER pode ser usada para extrair dados organizados verticalmente (em linhas) ou horizontalmente (em colunas). FILTER retornará os dados correspondentes na mesma orientação. A fórmula em B5 é:
=TRANSPOSE(FILTER(data,group="fox"))
Trabalhando de dentro para fora, o argumento include para FILTER é uma expressão lógica:
group="fox" // test for "fox"
Quando a expressão lógica é avaliada, ela retorna uma matriz de 10 valores TRUE e FALSE:
(TRUE,FALSE,TRUE,FALSE,FALSE,TRUE,TRUE,TRUE,TRUE,FALSE)
Nota: as vírgulas (,) nesta matriz indicam colunas. Ponto-e-vírgula (;) indicaria linhas.
O array contém um valor por registro nos dados, e cada TRUE corresponde a uma coluna onde o grupo é "raposa". Essa matriz é retornada diretamente para FILTER como o argumento de inclusão, onde faz a filtragem real:
FILTER(data,(TRUE,FALSE,TRUE,FALSE,FALSE,TRUE,TRUE,TRUE,TRUE,FALSE))
Apenas os dados nas colunas que correspondem a TRUE passam pelo filtro, então o resultado são dados para as seis pessoas no grupo "raposa". FILTER retorna esses dados na estrutura horizontal original. Como queremos exibir os resultados de FILTER em um formato vertical, a função TRANSPOSE envolve a função FILTER:
=TRANSPOSE(FILTER(data,group="fox"))
A função TRANSPOSE transpõe os dados e retorna uma matriz vertical como resultado final na célula B10. Como FILTER é uma função de matriz dinâmica, os resultados se estendem para a faixa B10: D15. Se os dados nos dados (C4: L6) mudarem, o resultado do FILTER será atualizado automaticamente.