Raccomandato, 2024

Scelta Del Redattore

Come utilizzare If e annidato se le dichiarazioni in Excel

Una funzione di Excel che uso un bel po 'nelle mie formule è la funzione IF . La funzione IF viene utilizzata per testare una condizione logica e produrre due risultati diversi a seconda che la condizione logica restituisca VERO o FALSO .

Prendiamo come esempio la tabella delle vendite di telefoni cellulari qui sotto. Puoi scaricare il file di esempio qui.

Funzione IF con condizione singola

Considerare uno scenario in cui è necessario calcolare la Commissione Commissione per ogni riga di vendita, a seconda di dove sono state effettuate le vendite ( colonna D ). Se le vendite sono state effettuate negli Stati Uniti, la Commissione Commissione è pari al 10%, altrimenti le posizioni rimanenti avranno una Commissione Commissione del 5%.

La prima formula che devi inserire nella cella F2 è la seguente:

 = IF (D2 = "USA", E2 * 10%, E2 * 5%) 

Ripartizione della formula:

  1. = IF ( - "=" indica l'inizio di una formula nella cella e IF è la funzione di Excel che stiamo usando.
  2. D2 = "USA" - Test logico che eseguiamo (cioè se i dati nella colonna D2 sono USA ).
  3. E2 * 10% - Risultato che verrà restituito dalla formula se il test logico iniziale risulta TRUE (cioè il valore nella colonna D2 è USA ).
  4. E2 * 5% - Risultato che verrà restituito dalla formula se il test logico iniziale risulta in FALSE (cioè il valore nella colonna D2 NON è USA ).
  5. ) - Parentesi di chiusura che indica la fine della formula.

Quindi è possibile copiare la formula dalla cella F2 al resto delle righe nella colonna F e calcolerà la Commissione Commissione per ogni riga, o del 10% o del 5% a seconda che il test logico IF restituisca TRUE o FALSE su ciascuna riga.

Funzione IF con condizioni multiple

Cosa accadrebbe se le regole fossero un po 'più complicate in cui è necessario testare più di una condizione logica con risultati diversi restituiti per ogni condizione?

Excel ha una risposta a questo! Possiamo combinare più funzioni IF all'interno della stessa cella, che a volte è noto come IF annidato .

Si consideri uno scenario simile in cui le Commissioni sono diverse per ogni posizione di vendita come di seguito:

  • USA 10%
  • Australia 5%
  • Singapore 2%

Nella cella F2 (che in seguito verrà copiata nel resto delle righe nella stessa colonna F), inserire la formula come segue:

 = SE (D2 = "USA", E2 * 10%, IF (D2 = "Australia", E2 * 5%, E2 * 2%)) 

Ripartizione della formula:

  1. = IF ( - Inizio della formula utilizzando un'istruzione IF
  2. D2 = "USA" - Primo test logico che eseguiamo (ovvero se i dati nella colonna D2 sono USA ).
  3. E2 * 10% - Risultato che verrà restituito dalla formula se il test logico iniziale risulta TRUE (cioè il valore nella colonna D2 è USA ).
  4. IF (D2 = "Australia", E2 * 5%, E2 * 2%) - seconda istruzione Excel IF che sarà valutata se il test logico iniziale ha dato come risultato FALSE (cioè il valore nella colonna D2 NON è USA ). Questa è una sintassi simile di " IF Function with Single Condition" discussa in precedenza in questo articolo in cui, se il valore su Cell D2 è l' Australia, verrà restituito il risultato di E2 * 5% . Altrimenti, se il valore non è l' Australia, la funzione restituirà il risultato di E2 * 2%.
  5. ) - Parentesi di chiusura che indica la fine della formula per la prima funzione IF .

Siccome Excel valuterà la formula da sinistra a destra, quando viene soddisfatto un test logico (es. D2 = "USA", la funzione si fermerà e restituirà il risultato, ignorando qualsiasi ulteriore test logico dopo (es. D2 = "Australia" . )

Quindi se il primo test logico restituisce FALSE (cioè la posizione non è USA ), continuerà a valutare il secondo test logico. Se il secondo test logico restituisce anche FALSE (cioè la posizione non è l' Australia ), non è necessario testare ulteriormente poiché sappiamo che l'unico valore possibile su Cell D2 è Singapore, quindi dovrebbe restituire un risultato di E2 * 2% .

Se si preferisce per chiarezza, è possibile aggiungere il terzo test logico IF (D2 = "Singapore", "valore se TRUE", "valore se FALSE") . Pertanto, la formula estesa completa è come mostrato di seguito:

 = SE (D2 = "USA", E2 * 10%, IF (D2 = "Australia", E2 * 5%, IF (D2 = "Singapore", E2 * 2%))) 

Come accennato in precedenza, quanto sopra restituirà lo stesso risultato della formula iniziale che avevamo.

 = SE (D2 = "USA", E2 * 10%, IF (D2 = "Australia", E2 * 5%, E2 * 2%)) 

Consigli veloci

  • Per ogni singola IF ( funzione, ci deve essere una parentesi rotonda di apertura e chiusura.Quando ci sono tre funzioni IF come per uno degli esempi sopra, la formula avrà bisogno di tre parentesi di chiusura ")))", ognuna contrassegnante la fine di un'apertura IF corrispondente ( dichiarazione.
  • Se non si specifica il secondo risultato del test logico (quando il test logico ha generato FALSE ), il valore predefinito assegnato da Excel sarà il testo "FALSE". Quindi formula = IF (D2 = "USA", E2 * 10%) restituirà il testo "FALSE" se D2 non è "USA" .
  • Se si hanno diversi test logici ciascuno con il proprio risultato diverso, è possibile combinare / nidificare la funzione IF più volte, una dopo l'altra, in modo simile all'esempio precedente.
Top