Comparando 1 célula com 3 outras células no Excel

Comparando 1 célula com 3 outras células no Excel

Estou tentando comparar uma célula com três resultados possíveis em uma corrida. Se a célula for igual ao valor da primeira célula eles ganham 5 pontos, se a célula for igual ao valor da segunda célula eles ganham 3 pontos, se a célula for igual ao valor da terceira célula eles ganham 1 ponto. Se a célula não corresponder a nenhuma das três células possíveis, eles recebem 0 pontos. Eu tentei usar o abaixo mas não funcionou

=IF(B4=$B$38,5,0)+OR(B4=B$39,3,0)+OR(B4=$B$40,1,0)

Responder1

Usar ÍNDICE(,MATCH())

=IFERROR(INDEX({5,3,1},MATCH(B4,B$38:B$40,0)),0)

Outro método é usar ESCOLHER:

=IFERROR(CHOOSE(MATCH(B4,B$38:B$40,0),5,3,1),0)

Ou apenas matemática:

=IFERROR(7-MATCH(B4,B$38:B$40,0)*2,0)

A chave com MATCH é que ele retorna a posição relativa que podemos usar com INDEX,CHOOSE ou apenas fazer contas com ele.

Portanto, se for igual ao valor em B40, retornará 3. O INDEX e o CHOOSE retornariam então o terceiro na matriz de opções. A matemática retornaria 17-3*2

Se quiser usar IF, você pode aninhar os IFs colocando o próximo no falso do anterior.

=IF(B4=$B$38,5,IF(B4=B$39,3,IF(B4=B$40,1,0)))

Ou se você tiver o Office 365 Excel, poderá usar o IFS:

=IFERROR(IFS(B4=$B$38,5,B4=B$39,3,B4=B$40,1),0)

Responder2

A outra resposta de Scottestá bem, mas o que você tinha está perto de funcionar. Se você estiverabsolutamente, positivamente certo que os três valores base são diferentes, você pode fazer

=IF(B4=$B$38,5,0)+IF(B4=B$39,3,0)+IF(B4=$B$40,1,0)

informação relacionada