Excel – Como retornar valores de correspondência diferentes com outras fórmulas?

Excel – Como retornar valores de correspondência diferentes com outras fórmulas?

Eu tenho a seguinte tabela e fórmulas resultantes: insira a descrição da imagem aqui

Primeiro tenho o vendedor e o número de vendas.

Depois, nas colunas D e E, quero saber quem são os melhores vendedores.

A fórmula em E2 é =LARGE($B$2:$B$11,$D2)preenchida.

Então quero saber os nomes dos melhores vendedores. A fórmula em F2 é =INDEX($A$2:$A$11,MATCH($E2,$B$2:$B$11,0))preenchida.

O problema é que 25 e 15 aparecem duas vezes cada para Bob, Jeff, Sue e Carl. Mas na coluna F Bob e Sue aparecem duas vezes porque Match retorna apenas para a primeira partida. Preciso de 25 para listar Bob e depois Jeff e 15 para listar Sue e depois Carl.

A maneira que eu queria fazer é verificar quantas vezes o valor em E aparece. Se aparecer várias vezes, descubra a qual instância desse valor a célula está próxima e, em seguida, encontre esse valor na correspondência do nome. Portanto, para 25 com 2 valores, F4 é o primeiro 25 em E, então retornaria Bob, e F5, que é o segundo 25, retornaria Jeff.

Parece simples, mas não consegui colocá-lo em uma fórmula funcional. Estou tentando ter uma única fórmula em F dando os resultados desejados.

Responder1

Use AGGREGATE como uma função SMALL para retornar a linha correta para INDEX:

=INDEX(A:A,AGGREGATE(15,6,ROW($B$2:$B$11)/($B$2:$B$11=$E2),COUNTIFS($E$2:$E2,$E2)))

O COUNTIFS($E$2:$E2,$E2)retornará 1 para a primeira e 2 para as segundas instâncias do número, forçando assim o AGGREGATE a retornar o primeiro e depois o segundo nome.

Responder2

Minha pequena tentativa:

=IF(F1<>F2,INDEX($B$2:$B$13,MATCH(F2,$C$2:$C$13,0)),INDEX(OFFSET($B$2:$B$13,MATCH(G1,$B$2:$B$13,0),0,ROWS($B$2:$B$13)),MATCH(F2,OFFSET($B$2:$B$13,MATCH(G1,$B$2:$B$13,0),1,ROWS($B$2:$B$13)),0)

informação relacionada