Sommario
L'esercitazione mostra come utilizzare una formula IF di Excel per verificare se un dato numero o una data sono compresi tra due valori.
Per verificare se un dato valore è compreso tra due valori numerici, è possibile utilizzare la funzione AND con due test logici. Per restituire i propri valori quando entrambe le espressioni valutano VERO, annidare AND all'interno della funzione IF. Seguono esempi dettagliati.
Formula di Excel: se tra due numeri
Per verificare se un dato numero è compreso tra due numeri specificati dall'utente, utilizzare la funzione AND con due test logici:
- Utilizzare l'operatore maggiore allora (>) per verificare se il valore è maggiore di un numero minore.
- Utilizzare l'operatore meno di (<) per verificare se il valore è inferiore a un numero più grande.
Il generico Se tra formula è:
AND( valore > numero_più_piccolo , valore < numero_più_grande )Per includere i valori limite, utilizzare gli operatori maggiore o uguale a (>=) e minore o uguale a (<=):
AND( valore Traduzione: "Non è vero che non c'è niente da fare... numero_più_piccolo , valore <= numero_più_grande )Ad esempio, per vedere se un numero in A2 è compreso tra 10 e 20, esclusi i valori limite, la formula in B2, copiata, è:
=AND(A2>10, A2<20)
Per verificare se A2 è compreso tra 10 e 20, inclusi i valori di soglia, la formula in C2 assume questa forma:
=AND(A2>=10, A2<=20)
In entrambi i casi, il risultato è il valore booleano VERO se il numero testato è compreso tra 10 e 20, FALSO in caso contrario:
Se tra due numeri allora
Se si desidera restituire un valore personalizzato se un numero è compreso tra due valori, inserire la formula AND nel test logico della funzione IF.
Ad esempio, per restituire "Sì" se il numero in A2 è compreso tra 10 e 20, "No" altrimenti, utilizzare una di queste istruzioni IF:
Se tra 10 e 20:
=IF(AND(A2>10, A2<20), "Sì", "No")
Se tra 10 e 20, compresi i confini:
=IF(AND(A2>=10, A2<=20), "Sì", "No")
Suggerimento: invece di codificare i valori di soglia nella formula, è possibile inserirli in singole celle e fare riferimento a tali celle come mostrato nell'esempio seguente.
Supponiamo di avere un insieme di valori nella colonna A e di voler sapere quali valori si trovano tra i numeri delle colonne B e C nella stessa riga. Supponendo che un numero più piccolo si trovi sempre nella colonna B e un numero più grande nella colonna C, il compito può essere svolto con questa formula:
=IF(AND(A2>B2, A2
Compresi i confini:
=IF(AND(A2>=B2, A2<=C2), "Sì", "No")
Ed ecco una variante del Se tra che restituisce un valore se VERO, un testo o una stringa vuota se FALSO:
=IF(AND(A2>10, A2<20), A2, "Invalido")
Compresi i confini:
=IF(AND(A2>=10, A2<=20), A2, "Invalido")
Se i valori limite sono in colonne diverse
Quando i numeri più piccoli e più grandi da confrontare possono apparire in colonne diverse (ad esempio, il numero 1 non è sempre più piccolo del numero 2), utilizzare una versione leggermente più complessa della formula.
AND( valore MIN( num1 , num2 ), valore <MAX( num1 , num2 ))In questo caso, si verifica innanzitutto se il valore target è superiore a uno dei due numeri più piccoli restituiti dalla funzione MIN, quindi si controlla se è inferiore a uno dei due numeri più grandi restituiti dalla funzione MAX.
Per includere i numeri di soglia, regolare la logica come segue:
AND( valore = MIN( num1 , num2 ), valore <= MAX( num1 , num2 ))Ad esempio, per scoprire se un numero in A2 è compreso tra due numeri in B2 e C2, si può utilizzare una di queste formule:
Esclusione dei confini:
=AND(A2>MIN(B2, C2), A2
Compresi i confini:
=AND(A2>=MIN(B2, C2), A2<=MAX(B2, C2))
Per restituire i propri valori invece di VERO e FALSO, utilizzare la seguente istruzione IF di Excel tra due numeri:
=IF(AND(A2>MIN(B2, C2), A2
Oppure
=IF(AND(A2>=MIN(B2, C2), A2<=MAX(B2, C2)), "Sì", "No")
Formula di Excel: se tra due date
Il Se tra le date in Excel è essenzialmente uguale a Se tra i numeri .
Per verificare se una data è compresa in un determinato intervallo, la formula generica è:
SE(AND( data Traduzione: "Non è vero che non c'è niente da fare... data_inizio , data <= data_fine ), value_if_true, value_if_false)Senza contare le date di confine:
SE(AND( data > data_inizio , data < data_fine ), value_if_true, value_if_false)Tuttavia, c'è un'avvertenza: IF non riconosce le date fornite direttamente ai suoi argomenti e le considera come stringhe di testo. Affinché IF riconosca una data, questa deve essere racchiusa nella funzione DATEVALUE.
Ad esempio, per verificare se una data in A2 cade tra l'1-Gen-2022 e il 31-Dic-2022 inclusi, si può usare questa formula:
=IF(AND(A2>=DATEVALUE("1/1/2022"), A2<=DATEVALUE("12/31/2022")), "Sì", "No")
Se le date di inizio e fine si trovano in celle predefinite, la formula diventa molto più semplice:
=IF(AND(A2>=$E$2, A2<=$E$3), "Sì", "No")
Dove $E$2 è la data di inizio e $E$3 è la data di fine. Si noti l'uso di riferimenti assoluti per bloccare gli indirizzi delle celle, in modo che la formula non si interrompa quando viene copiata nelle celle sottostanti.
Suggerimento: se ogni data testata deve rientrare nel proprio intervallo e le date limite possono essere scambiate, utilizzare le funzioni MIN e MAX per determinare una data più piccola e più grande, come spiegato in Se i valori limite sono in colonne diverse.
Se la data è entro i prossimi N giorni
Per verificare se una data è all'interno del prossimo n giorni dalla data odierna, utilizzare la funzione OGGI per determinare le date di inizio e fine. All'interno dell'istruzione AND, il primo test logico verifica se la data di destinazione è maggiore della data odierna, mentre il secondo test logico verifica se è minore o uguale alla data corrente più n giorni:
SE(AND( data > OGGI(), data <= OGGI()+ n ), value_if_true, value_if_false)Ad esempio, per verificare se una data in A2 si verifica nei prossimi 7 giorni, la formula è:
=IF(AND(A2>OGGI(), A2<=OGGI()+7), "Sì", "No")
Se la data è compresa negli ultimi N giorni
Per verificare se una data è all'interno dell'ultimo periodo n giorni della data odierna, si utilizza ancora una volta IF insieme alle funzioni AND e TODAY. Il primo test logico di AND verifica se una data testata è maggiore o uguale alla data odierna meno n e il secondo test logico verifica se la data è inferiore a oggi:
SE(AND( data = OGGI()- n , data <TODAY()), value_if_true, value_if_false)Ad esempio, per determinare se una data in A2 si è verificata negli ultimi 7 giorni, la formula è:
=IF(AND(A2>=GIORNO()-7, A2
Speriamo che i nostri esempi vi abbiano aiutato a capire come utilizzare la funzione Se tra Vi ringrazio per la lettura e spero di vedervi sul nostro blog la prossima settimana!
Quaderno pratico
Excel Se tra - esempi di formule (file .xlsx)