Retorna um valor se uma condição especificada for avaliada como TRUE e outro valor se ele for avaliado como FALSE. Use IF para realizar testes condicionais em valores e fórmulas.
Sintaxe
IF(logical_test,value_if_true,value_if_false)
Logical_test é qualquer valor ou expressão que possa ser avaliada como TRUE ou FALSE. Por exemplo, [Quarter1]=100 é uma expressão lógica; se o valor em uma linha da coluna, [Quarter1], for igual a 100, a expressão será avaliada como TRUE. Caso contrário, a expressão é avaliada como FALSE. Esse argumento pode usar qualquer operador de cálculo de comparação.
Value_if_true é o valor retornado se logical_test for TRUE. Por exemplo, se esse argumento for a cadeia de texto "Dentro do orçamento" e o argumento logical_test for avaliado como TRUE, a função IF exibirá o texto "Dentro do orçamento". Se logical_test for TRUE e value_if_true estiver em branco, esse argumento retornará 0 (zero). Para exibir a palavra TRUE, use o valor lógico TRUE para este argumento. Value_if_true pode ser outra fórmula.
Value_if_false é o valor retornado se logical_test for FALSE. Por exemplo, se esse argumento for a cadeia de texto "Over budget" e o argumento logical_test for avaliado como FALSE, a função IF exibirá o texto "Over budget". Se logical_test for FALSE e value_if_false for omitido, (ou seja, após value_if_true, não houver vírgula), o valor lógico FALSE será retornado. Se logical_test for FALSE e value_if_false estiverem em branco (ou seja, após value_if_true, haverá uma vírgula seguida pelos parênteses de fechamento), o valor 0 (zero) será retornado. Value_if_false pode ser outra fórmula.
Comentários
-
Até sete funções IF podem ser aninhadas como argumentos value_if_true e value_if_false para construir testes mais elaborados. Consulte o último dos exemplos a seguir.
-
Quando os argumentos value_if_true e value_if_false são avaliados, IF retorna o valor retornado por essas instruções.
-
Se algum dos argumentos para IF for matrizes, todos os elementos da matriz serão avaliados quando a instrução IF for executada.
Exemplo definido 1
C ol1 |
Col2 |
Col3 |
Despesa |
Fórmula |
Descrição (Resultado) |
---|---|---|---|---|---|
50 |
=IF([Expense]<=100"Dentro do orçamento", "Sobre o orçamento") |
Se o número for menor ou igual a 100, a fórmula exibirá "Dentro do orçamento". Caso contrário, a função exibe "Orçamento excessivo". (Dentro do orçamento) |
|||
23 |
45 |
89 |
50 |
=IF([Expense]=100,SUM([Col1],[Col2],[Col3])") |
Se o número for 100, os três valores serão adicionados. Caso contrário, será retornado um texto vazio (""). () |
Exemplo de conjunto 2
RealExpenses |
PredictedExpenses |
Fórmula |
Descrição (Resultado) |
---|---|---|---|
1500 |
900 |
=IF([ActualExpenses]>[PredictedExpenses]",Over Budget","OK") |
Verifica se a primeira linha está acima do orçamento (acima do orçamento) |
500 |
900 |
=IF([ActualExpenses]>[PredictedExpenses]",Over Budget","OK") |
Verifica se a segunda linha está acima do orçamento (OK) |
Exemplo definido 3
Pontuação |
Fórmula |
Descrição (Resultado) |
---|---|---|
45 |
=IF([Score]>89"A",IF([Score]>79"B", IF([Score]>69"C",IF([Score]>59"D","F")))) |
Atribui uma nota de letra à primeira pontuação (F) |
90 |
=IF([Score]>89"A",IF([Score]>79"B", IF([Score]>69"C",IF([Score]>59"D","F")))) |
Atribui uma nota de letra à segunda pontuação (A) |
78 |
=IF([Score]>89"A",IF([Score]>79"B", IF([Score]>69"C",IF([Score]>59"D","F")))) |
Atribui uma nota de letra à terceira pontuação (C) |
No exemplo anterior, a segunda instrução IF também é o argumento value_if_false para a primeira instrução IF. Da mesma forma, a terceira instrução IF é o argumento value_if_false para a segunda instrução IF. Por exemplo, se o primeiro logical_test ([Score]>89) for TRUE, "A" será retornado. Se o primeiro logical_test for FALSE, a segunda instrução IF será avaliada e assim por diante.
As notas de letra são atribuídas a números usando a chave a seguir (supondo apenas o uso de inteiros).
Se Score for |
Em seguida, retorne |
---|---|
Maior que 89 |
A |
De 80 a 89 |
B |
De 70 a 79 |
C |
De 60 a 69 |
D |
Menos de 60 |
S |