Sommario
Il tutorial spiega l'essenza delle funzioni logiche AND, OR, XOR e NOT di Excel e fornisce esempi di formule che ne dimostrano l'uso comune e creativo.
La settimana scorsa abbiamo fatto un giro tra gli operatori logici di Excel, utilizzati per confrontare i dati contenuti in celle diverse. Oggi vedremo come estendere l'uso degli operatori logici e costruire test più elaborati per eseguire calcoli più complessi. Le funzioni logiche di Excel, come AND, OR, XOR e NOT, ci aiuteranno a farlo.
Funzioni logiche di Excel - panoramica
Per lavorare con i valori logici, Microsoft Excel mette a disposizione 4 funzioni logiche: AND, OR, XOR e NOT. Queste funzioni vengono utilizzate quando si desidera effettuare più di un confronto nella formula o testare più condizioni invece di una sola. Oltre agli operatori logici, le funzioni logiche di Excel restituiscono VERO o FALSO quando i loro argomenti vengono valutati.
La tabella seguente fornisce un breve riepilogo di ciò che fa ciascuna funzione logica per aiutare a scegliere la formula giusta per un compito specifico.
Funzione | Descrizione | Esempio di formula | Descrizione della formula |
E | Restituisce VERO se tutti gli argomenti sono valutati come VERO. | =AND(A2>=10, B2<5) | La formula restituisce VERO se il valore nella cella A2 è maggiore o uguale a 10 e il valore nella cella B2 è minore di 5, FALSO altrimenti. |
O | Restituisce VERO se uno qualsiasi degli argomenti è valutato come VERO. | =OR(A2>=10, B2<5) | La formula restituisce VERO se A2 è maggiore o uguale a 10 o B2 è minore di 5, oppure se entrambe le condizioni sono soddisfatte. Se nessuna delle due condizioni è soddisfatta, la formula restituisce FALSO. |
XOR | Restituisce un Or esclusivo logico di tutti gli argomenti. | =XOR(A2>=10, B2<5) | La formula restituisce VERO se A2 è maggiore o uguale a 10 o B2 è minore di 5. Se nessuna delle due condizioni è soddisfatta o entrambe le condizioni sono soddisfatte, la formula restituisce FALSO. |
NON | Restituisce il valore logico invertito del suo argomento, ossia se l'argomento è FALSO, viene restituito VERO e viceversa. | =NOT(A2>=10) | La formula restituisce FALSO se il valore nella cella A1 è maggiore o uguale a 10; VERO altrimenti. |
Oltre alle quattro funzioni logiche descritte sopra, Microsoft Excel offre 3 funzioni "condizionali": IF, IFERROR e IFNA.
Funzioni logiche di Excel: fatti e cifre
- Come argomenti delle funzioni logiche si possono usare riferimenti a celle, valori numerici e di testo, valori booleani, operatori di confronto e altre funzioni di Excel. Tuttavia, tutti gli argomenti devono avere come valore booleano VERO o FALSO, oppure riferimenti o array contenenti valori logici.
- Se un argomento di una funzione logica contiene qualsiasi celle vuote Se tutti gli argomenti sono celle vuote, la formula restituisce l'errore #VALORE!
- Se un argomento di una funzione logica contiene dei numeri, lo zero viene valutato come FALSO, mentre tutti gli altri numeri, compresi quelli negativi, vengono valutati come VERO. Ad esempio, se le celle A1:A5 contengono dei numeri, la formula =AND(A1:A5) restituirà VERO se nessuna delle celle contiene 0, FALSO altrimenti.
- Una funzione logica restituisce l'errore #VALORE! se nessuno degli argomenti viene valutato come valore logico.
- Una funzione logica restituisce l'errore #NOME? se il nome della funzione è stato scritto male o se si è tentato di utilizzare la funzione in una versione precedente di Excel che non la supporta. Ad esempio, la funzione XOR può essere utilizzata solo in Excel 2016 e 2013.
- In Excel 2007 e versioni successive, è possibile includere fino a 255 argomenti in una funzione logica, purché la lunghezza totale della formula non superi gli 8.192 caratteri. In Excel 2003 e versioni successive, è possibile fornire fino a 30 argomenti e la lunghezza totale della formula non deve superare i 1.024 caratteri.
Utilizzo della funzione AND in Excel
La funzione AND è il membro più popolare della famiglia delle funzioni logiche. È utile quando si devono verificare diverse condizioni e assicurarsi che siano tutte soddisfatte. Tecnicamente, la funzione AND verifica le condizioni specificate e restituisce VERO se tutte le condizioni sono valutate VERE, FALSO altrimenti.
La sintassi della funzione AND di Excel è la seguente:
AND(logico1, [logico2], ...)Dove logico è la condizione che si desidera testare e che può essere valutata come VERO o FALSO. La prima condizione (logico1) è obbligatoria, le condizioni successive sono facoltative.
Vediamo ora alcuni esempi di formule che dimostrano come utilizzare le funzioni AND nelle formule di Excel.
Formula | Descrizione |
=AND(A2="Banane", B2>C2) | Restituisce VERO se A2 contiene "Banane" e B2 è maggiore di C2, FALSO altrimenti. |
=AND(B2>20, B2=C2) | Restituisce VERO se B2 è maggiore di 20 e B2 è uguale a C2, FALSO altrimenti. |
=AND(A2="Banane", B2>=30, B2>C2) | Restituisce VERO se A2 contiene "Banane", B2 è maggiore o uguale a 30 e B2 è maggiore di C2, FALSO altrimenti. |
Funzione AND di Excel - usi comuni
Da sola, la funzione AND di Excel non è molto eccitante e ha un'utilità limitata, ma in combinazione con altre funzioni di Excel, AND può estendere in modo significativo le capacità dei vostri fogli di lavoro.
Uno degli usi più comuni della funzione AND di Excel si trova nell'argomento logical_test della funzione IF per verificare diverse condizioni invece di una sola. Ad esempio, è possibile annidare una qualsiasi delle funzioni AND di cui sopra all'interno della funzione IF e ottenere un risultato simile a questo:
=IF(AND(A2="Banane", B2>C2), "Buono", "Cattivo")
Per altri esempi di formule IF / AND, consultate il tutorial: Funzione IF di Excel con condizioni AND multiple.
Una formula Excel per la condizione BETWEEN
Se dovete creare una formula between in Excel che selezioni tutti i valori compresi tra i due valori indicati, un approccio comune è quello di utilizzare la funzione IF con AND nel test logico.
Ad esempio, abbiamo 3 valori nelle colonne A, B e C e vogliamo sapere se un valore nella colonna A cade tra i valori B e C. Per creare una formula di questo tipo, basta la funzione IF con AND annidato e un paio di operatori di confronto:
Formula per verificare se X è compreso tra Y e Z, inclusi:
=IF(AND(A2>=B2,A2<=C2),"Yes", "No")
Formula per verificare se X è compreso tra Y e Z, non incluso:
=IF(AND(A2>B2, A2
Come dimostrato dalla schermata precedente, la formula funziona perfettamente per tutti i tipi di dati: numeri, date e valori di testo. Quando si confrontano i valori di testo, la formula li controlla carattere per carattere in ordine alfabetico. Ad esempio, afferma che Mele non tra Albicocca e Banane perché la seconda "p" in Mele viene prima di "r" in Albicocca Per maggiori dettagli, consultare la sezione Utilizzo degli operatori di confronto di Excel con i valori di testo.
Come vedete, la formula IF /AND è semplice, veloce e quasi universale. Dico "quasi" perché non copre un solo scenario. La formula di cui sopra implica che un valore nella colonna B sia più piccolo di quello nella colonna C, cioè la colonna B contiene sempre il valore limite inferiore e C - il valore limite superiore. Questo è il motivo per cui la formula restituisce " No " per la riga 6, dove A6 ha 12, B6 - 15 e C6 - 3 e per la riga 8 dove A8 è 24-nov, B8 è 26-dic e C8 è 21-ott.
Ma se si desidera che la formula between funzioni correttamente indipendentemente dalla posizione dei valori limite inferiore e superiore, si può utilizzare la funzione MEDIANA di Excel che restituisce la mediana dei numeri dati (cioè il numero al centro di un insieme di numeri).
Quindi, se nel test logico della funzione IF si sostituisce AND con MEDIANA, la formula sarà come segue:
=IF(A2=MEDIAN(A2:C2), "Sì", "No")
E si otterranno i seguenti risultati:
Come vedete, la funzione MEDIANA funziona perfettamente per i numeri e le date, ma restituisce l'errore #NUM! per i valori di testo. Ahimè, nessuno è perfetto : )
Se si desidera una formula Between perfetta che funzioni sia per i valori di testo che per i numeri e le date, è necessario costruire un testo logico più complesso utilizzando le funzioni AND / OR, come questo:
=IF(OR(AND(A2>B2, A2
Utilizzo della funzione OR in Excel
Oltre a AND, la funzione OR di Excel è una funzione logica di base che viene utilizzata per confrontare due valori o affermazioni. La differenza è che la funzione OR restituisce VERO se almeno uno degli argomenti è valutato come VERO e restituisce FALSO se tutti gli argomenti sono FALSI. La funzione OR è disponibile in tutte le versioni di Excel 2016 - 2000.
La sintassi della funzione OR di Excel è molto simile a quella di AND:
OR(logico1, [logico2], ...)Dove per logica si intende qualcosa che si vuole testare e che può essere VERO o FALSO. La prima logica è obbligatoria, le condizioni aggiuntive (fino a 255 nelle versioni moderne di Excel) sono facoltative.
Ora scriviamo alcune formule per farvi capire come funziona la funzione OR in Excel.
Formula | Descrizione |
=OR(A2="Bananas", A2="Oranges") | Restituisce VERO se A2 contiene "Banane" o "Arance", FALSO altrimenti. |
=OR(B2>=40, C2>=20) | Restituisce VERO se B2 è maggiore o uguale a 40 o C2 è maggiore o uguale a 20, FALSO altrimenti. |
=OR(B2=" ",) | Restituisce VERO se B2 o C2 sono vuoti o entrambi, FALSO altrimenti. |
Oltre alla funzione AND di Excel, OR è ampiamente utilizzata per ampliare l'utilità di altre funzioni di Excel che eseguono test logici, ad esempio la funzione IF. Ecco solo un paio di esempi:
Funzione IF con OR annidato
=IF(OR(B2>30, C2>20), "Buono", "Cattivo")
La formula restituisce " Buono " se un numero nella cella B3 è maggiore di 30 o il numero in C2 è maggiore di 20, " Male " altrimenti.
Le funzioni AND / OR di Excel in una formula
Naturalmente, nulla vieta di utilizzare entrambe le funzioni, AND & OR, in un'unica formula, se la logica aziendale lo richiede. Esistono infinite varianti di queste formule che si riducono ai seguenti schemi di base:
=AND(OR(Cond1, Cond2), Cond3)
=AND[OR(Cond1, Cond2), OR(Cond3, Cond4)
=OR(AND(Cond1, Cond2), Cond3)
=OR(AND(Cond1,Cond2), AND(Cond3,Cond4))
Ad esempio, se si volesse sapere quali partite di banane e arance sono esaurite, cioè se il numero "In stock" (colonna B) è uguale al numero "Venduto" (colonna C), la seguente formula OR/AND potrebbe mostrarlo rapidamente:
=OR(AND(A2="banane", B2=C2), AND(A2="arance", B2=C2))
Funzione OR nella formattazione condizionale di Excel
=O($B2="", $C2="")
La regola con la formula OR sopra riportata evidenzia le righe che contengono una cella vuota nella colonna B o C, o in entrambe.
Per ulteriori informazioni sulle formule di formattazione condizionale, consultare i seguenti articoli:
- Formule di formattazione condizionale di Excel
- Modifica del colore della riga in base al valore di una cella
- Modifica del colore di una cella in base al valore di un'altra cella
- Come evidenziare ogni altra riga in Excel
Utilizzo della funzione XOR in Excel
In Excel 2013, Microsoft ha introdotto la funzione XOR, che è una funzione logica Esclusivo OR Questo termine è sicuramente familiare a coloro che hanno una certa conoscenza di un linguaggio di programmazione o dell'informatica in generale. Per coloro che non lo conoscono, il concetto di "Or esclusivo" può essere un po' difficile da comprendere all'inizio, ma si spera che la spiegazione seguente, illustrata con esempi di formule, sia d'aiuto.
La sintassi della funzione XOR è identica a quella di OR :
XOR(logico1, [logico2],...)La prima affermazione logica (Logica 1) è obbligatoria, i valori logici aggiuntivi sono facoltativi. È possibile verificare fino a 254 condizioni in una formula, che possono essere valori logici, matrici o riferimenti che valutano VERO o FALSO.
Nella sua versione più semplice, una formula XOR contiene solo 2 affermazioni logiche e i relativi ritorni:
- VERO se uno dei due argomenti è valutato come VERO.
- FALSO se entrambi gli argomenti sono VERI o nessuno dei due è VERO.
Questo potrebbe essere più facile da capire con gli esempi di formula:
Formula | Risultato | Descrizione |
=XOR(1>0, 2<1) | VERO | Restituisce VERO perché il primo argomento è VERO e il secondo è FALSO. |
=XOR(1<0, 2<1) | FALSO | Restituisce FALSO perché entrambi gli argomenti sono FALSI. |
=XOR(1>0, 2>1) | FALSO | Restituisce FALSO perché entrambi gli argomenti sono VERI. |
Quando si aggiungono altre affermazioni logiche, la funzione XOR di Excel dà come risultato:
- VERO se un numero dispari di argomenti ha valore VERO;
- FALSO se il numero totale di affermazioni VERE è pari o se tutte le affermazioni sono FALSE.
L'immagine seguente illustra il punto:
Se non siete sicuri di come la funzione XOR di Excel possa essere applicata a uno scenario reale, considerate il seguente esempio. Supponiamo di avere una tabella dei concorrenti e dei loro risultati per le prime due partite. Vogliamo sapere quale dei paganti dovrà giocare la terza partita in base alle seguenti condizioni:
- I concorrenti che hanno vinto la prima e la seconda partita passano automaticamente al turno successivo e non devono giocare la terza partita.
- I concorrenti che hanno perso entrambe le prime partite sono eliminati e non giocano nemmeno la terza partita.
- I concorrenti che hanno vinto la Partita 1 o la Partita 2 giocheranno la Partita 3 per determinare chi passa al turno successivo e chi no.
Una semplice formula XOR funziona esattamente come vogliamo:
=XOR(B2="Vinto", C2="Vinto")
Se si inserisce questa funzione XOR nel test logico della formula IF, si ottengono risultati ancora più sensati:
=IF(XOR(B2="Vinto", C2="Vinto"), "Sì", "No")
Utilizzo della funzione NOT in Excel
La funzione NOT è una delle funzioni più semplici di Excel in termini di sintassi:
NOT(logico)La funzione NOT si usa in Excel per invertire il valore del suo argomento. In altre parole, se la valutazione logica è FALSO, la funzione NOT restituisce VERO e viceversa. Ad esempio, entrambe le formule seguenti restituiscono FALSO:
=NOT(TRUE)
=NOT(2*2=4)
In alcuni casi, potrebbe essere più interessante sapere quando una certa condizione non è soddisfatta piuttosto che quando lo è. Ad esempio, quando si esamina un elenco di abiti, si potrebbe voler escludere un colore che non ci si addice. Non amo particolarmente il nero, quindi procedo con questa formula:
=NOT(C2="nero")
Come sempre, in Microsoft Excel c'è più di un modo per fare qualcosa, e si può ottenere lo stesso risultato utilizzando l'operatore Non uguale a: =C2 "nero".
Se si desidera verificare diverse condizioni in un'unica formula, è possibile utilizzare NOT in congiunzione con la funzione AND o OR. Ad esempio, se si volessero escludere i colori bianchi e neri, la formula sarebbe la seguente:
=NOT(OR(C2="black", C2="white"))
E se si preferisce non avere un cappotto nero, mentre si può prendere in considerazione una giacca nera o una pelliccia posteriore, si deve usare NOT in combinazione con la funzione AND di Excel:
=NOT(AND(C2="black", B2="coat"))
Un altro uso comune della funzione NOT in Excel è quello di invertire il comportamento di qualche altra funzione. Ad esempio, è possibile combinare le funzioni NOT e ISBLANK per creare la formula ISNOTBLANK che manca a Microsoft Excel.
Come è noto, la formula =ISBLANK(A2) restituisce VERO se la cella A2 è vuota. La funzione NOT può invertire questo risultato in FALSO: =NOT(ISBLANK(A2))
È possibile fare un ulteriore passo avanti e creare un'istruzione IF annidata con le funzioni NOT / ISBLANK per un compito reale:
=IF(NOT(ISBLANK(C2)), C2*0,15, "Nessun bonus :(")
Se la cella C2 non è vuota, moltiplicare il numero in C2 per 0,15, che dà il 15% di bonus a ogni venditore che ha effettuato vendite extra. Se C2 è vuota, appare il testo "Nessun bonus :(".
In sostanza, questo è il modo in cui si utilizzano le funzioni logiche in Excel. Naturalmente, questi esempi hanno solo scalfito la superficie delle capacità di AND, OR, XOR e NOT. Conoscendo le basi, potete ora ampliare le vostre conoscenze affrontando i compiti reali e scrivendo formule elaborate e intelligenti per i vostri fogli di lavoro.