Por exemplo,
Digamos que o valor de uma célula seja:
IF(ISNA(VLOOKUP(A3,somesheet!G:J,3,FALSE) * VLOOKUP(A3,someothersheet!A:D,4,FALSE)), 0, VLOOKUP(A3,somesheet!G:J,3,FALSE) * VLOOKUP(A3,someothersheet!A:D,4,FALSE))
Aqui, quero o produto dos dois VLOOKUPs. Mas algumas linhas podem não estar lá e, portanto, podem retornar NA. Se retornar NA, basta colocar zero nessa célula, caso contrário, quero o produto.
Parece bobagem que você teria que ter toda essa expressão lá duas vezes. Existe algum atalho no qual posso dizer "faça esse cálculo e, se ele retornar um valor, use-o, mas use algum valor padrão?
Respostas:
Se você possui o Excel 2007 ou versões posteriores, pode usar a função IFERROR para evitar repetições
=IFERROR(VLOOKUP(A3,somesheet!G:J,3,FALSE)*VLOOKUP(A3,someothersheet!A:D,4,FALSE),0)
ou você pode usar uma solução alternativa como esta em versões anteriores
=LOOKUP(9.9E+307,IF({1,0},0,VLOOKUP(A3,somesheet!G:J,3,FALSE)*VLOOKUP(A3,someothersheet!A:D,4,FALSE)))
fonte
Pode fazer mais sentido para você se você verificou o primeiro valor de pesquisa para NA e depois o segundo, e se ambos são válidos, multiplique-os.
Isso adiciona mais complexidade, mas pode não ofender as delicadas sensibilidades do programador. ;-)
fonte