Esta fórmula funciona, mas é enorme:
=IF(X3=B2,K2,IF(X3=B3,K3,IF(X3=B4,K4,IF(X3=B5,K5,IF(X3=B6,K6,IF(X3=B7,K7,IF(X3=B8,K8,IF(X3=B9,K9,IF(X3=B10,K10,IF(X3=B11,K11,IF(X3=B12,K12,IF(X3=B13,K13,IF(X3=B14,K14,IF(X3=B15,K15,IF(X3=B16,K16,IF(X3=B17,K17,IF(X3=B18,K18,IF(X3=B19,K19,IF(X3=B20,K20,IF(X3=B21,K21))))))))))))))))))))
Aqui está o que está fazendo:
If X3 is the same as B2, show the contents of cell K2.
If X3 is the same as B3, show the contents of cell K3.
If X3 is the same as B4, show the contents of cell K4.
...etc etc etc all the way to...
If X3 is the same as B21, show the contents of cell K21.
Como B2:B21 é simplesmente uma coluna de células e K2:K21 também é apenas uma coluna de células, existe alguma maneira de encurtar a fórmula acima, para que não seja enorme?
Eu não sei como transformar isso em 2 intervalos de células B e células K.
Tentar algo assim não funciona:
=IF(X3=B2:B21,K2:K21)
Porque dizer ao Excel para usar :
é dizer para somar tudo, de B2 a B21 e K2 a K21. Gostaria de saber se há algum outro separador (não um :
) que diz ao Excel para tratar cada célula individualmente em vez de adicioná-las?
Isso não funciona:
=IF(X3=B2-B21,K2-K21)
Isso resulta em:#VALUE!
O problema é que, qualquer que seja o número da célula B, também deve ser correspondido com o número correspondente (horizontalmente) na célula K.
Obrigado antecipadamente a qualquer um que possa saber a resposta, que tenho certeza que é realmente simples se a funcionalidade existir no Excel.
Dependendo da sua versão do Excel, você pode usar
XLOOKUP
,VLOOKUP
ouINDEX/MATCH
=VLOOKUP(X3;B2:K21;columns(B2:K2))
... e Sim PROCV leva mais um argumento, que normalmente é revelado quando você digita o nome da função, ou mesmo quando você pressiona F1 (Ajuda).
O valor padrão desse argumento é
True
, portanto, não é necessário digitá-lo nesse caso, mas se você precisar de correspondência exata no primeiro argumento, será necessário dizer 'False' aqui.Adicione
IFERROR(...;"Not found")
ao redor para exibir sua indicação de "nada encontrado".--- arquivo: exemplo.csv --- M4 usado em vez de X3 acima
No mínimo, podemos nos livrar dos parênteses extras usando
IFS
:Esta é uma simplificação geral que funciona sempre que você tem funções aninhadas
IF
como essa, mesmo que as diferentes condições e resultados não tenham nada em comum.No entanto, no seu caso, há um padrão simples para as condições e podemos simplificar ainda mais sua expressão, por exemplo, usando using
XLOOKUP
:Observe que
XLOOKUP
é um novo recurso do Excel 2021 e pode não funcionar em versões mais antigas do Excel. Para essas versões, você pode obter o mesmo resultado usandoINDEX
eMATCH
, como em:ou usando
VLOOKUP
:Onde suportado, no entanto,
XLOOKUP
é provavelmente a solução mais conveniente neste caso, e também suporta vários parâmetros adicionais que permitem especificar como a pesquisa é feita e o que fazer caso nenhuma correspondência exata seja encontrada.(Observe também que as soluções
INDEX
/MATCH
eVLOOKUP
terão de ser ajustadas, ou podem não funcionar, se você quiser, por exemplo, pesquisar ao longo de uma linha em vez de uma coluna ou retornar um valor de uma coluna que está à esquerda da pesquisa deve funcionar em todos os casos, o que IMO é uma boa razão para preferi-lo sempre que possível.XLOOKUP
)