Tutti sanno quanto sia versatile l'istruzione IF in un programma di script, ma sapevi che puoi usare gran parte della stessa logica all'interno di una cella in Excel?
Una definizione di base di un'istruzione IF in un programma è che consente di produrre qualcosa di specifico in base ai risultati di diversi input. Potresti eseguire calcoli completamente diversi basati sull'output di qualche altro calcolo. Potresti eseguire la formattazione condizionale . Puoi anche basare il tuo output su ricerche di stringhe di celle di input.
Se questo sembra complicato, non preoccuparti. Diamo un'occhiata ad alcuni modi creativi per utilizzare le istruzioni IF in Excel.
Che cos'è un'istruzione IF in Excel?
Quando la maggior parte delle persone pensa di utilizzare un'istruzione IF in Excel, pensa a VBA. Questo perché un'istruzione IF è solitamente logica utilizzata nel mondo della programmazione. Tuttavia, puoi utilizzare questa stessa logica di programmazione direttamente all'interno della stessa cella del foglio di calcolo.
Quando digiti '=IF(' nella cella, vedrai come deve essere la sintassi dell'istruzione IF per funzionare correttamente. Il requisito di base è solo un 'test logico'. Per impostazione predefinita, l'output nella cella sarà essere VERO o FALSO, ma è possibile personalizzarlo includendo parametri aggiuntivi nella funzione.
Come funziona una funzione IF di base
Per prima cosa, diamo un'occhiata a una funzione SE di base. Nel foglio di calcolo di esempio sopra, ho quattro attività che registro relative alla mia auto. Registro la data in cui si verifica uno dei quattro eventi: cambio dell'olio, riparazione dell'auto, immatricolazione o rinnovo dell'assicurazione.
Diciamo che se la colonna 'Riparato' contiene un 'S', allora voglio che il tipo di evento abbia 'RIPARAZIONE'. Altrimenti dovrebbe essere 'NON-RIPARAZIONE'. La logica per questa istruzione IF è molto semplice:
=IF(C2='YES','Repair','Non-Repair')
Il riempimento dell'intera colonna con questa formula restituisce i seguenti risultati:
Questa è una logica utile, ma in questo caso particolare non ha molto senso. Tutto quello che qualcuno deve fare è guardare la colonna 'Riparato' per identificare se quella data ha coinvolto o meno una riparazione.
Quindi, esploriamo alcune istruzioni di funzione IF più avanzate per vedere se possiamo rendere questa colonna un po' più utile.
Dichiarazioni AND e IF
Proprio come in un normale programma, a volte per esaminare due o tre condizioni che dipendono l'una dall'altra, è necessario utilizzare la logica AND. Lo stesso vale qui.
Definiamo due nuovi tipi di evento: pianificato o non pianificato.
Per questo esempio, ci concentreremo solo sul Cambio olio colonna. So che di solito programma il cambio dell'olio il secondo giorno di ogni mese. Qualsiasi cambio d'olio che non avviene il secondo giorno del mese è stato un cambio d'olio non pianificato.
Per identificarli, dobbiamo usare la logica AND come questa:
=IF(AND(DAY(A2)=2,B2='YES'),'Planned','Unplanned')
I risultati assomigliano a questo:
Funziona alla grande, ma come puoi vedere c'è un piccolo difetto logico. Funziona per mostrare quando si verificano cambi d'olio nelle date previste, che risultano come 'Pianificate'. Ma quando la colonna Cambio olio è vuota, anche l'output dovrebbe essere vuoto. Non ha senso restituire un risultato in quei casi perché non è mai avvenuto alcun cambio d'olio.
Per ottenere ciò, passeremo alla prossima lezione sulla funzione SE avanzata: istruzioni IF annidate.
Dichiarazioni IF annidate
Basandosi sull'ultima funzione, dovrai aggiungere un'altra istruzione IF all'interno dell'istruzione IF originale. Questo dovrebbe restituire uno spazio vuoto se la cella del cambio dell'olio originale è vuota.
giochi da fare in tv con il telefono
Ecco come appare questa affermazione:
=IF(ISBLANK(B2),'',IF(AND(DAY(A2)=2,B2='YES'),'Planned','Unplanned'))
Ora l'affermazione inizia a sembrare un po' complessa, ma in realtà non lo è se guardi da vicino. La prima istruzione IF controlla se la cella nella colonna B è vuota. Se lo è, restituisce uno spazio vuoto o ''.
Se non è vuoto, inserisci la stessa istruzione IF che abbiamo usato nella sezione precedente, nella parte False della prima istruzione IF. In questo modo, stai solo controllando e scrivendo i risultati sulla data del cambio dell'olio quando si è verificato un cambio dell'olio effettivo. In caso contrario, la cella è vuota.
Come puoi immaginare, questo potrebbe diventare terribilmente complesso. Quindi, quando stai annidando le istruzioni IF, fai sempre un passo alla volta. Testa la logica delle singole istruzioni IF prima di iniziare a nidificarle insieme. Perché, una volta nidificati alcuni di questi, risolverli può diventare un vero incubo.
come caricare un computer senza caricabatterie
O Dichiarazioni
Ora aumenteremo un po' la logica. Diciamo che questa volta quello che voglio fare è restituire 'Manutenzione annuale' se viene effettuato contemporaneamente un cambio dell'olio o una riparazione combinata con la registrazione o l'assicurazione, ma solo 'Manutenzione di routine' se è stato fatto solo un cambio dell'olio. Sembra complicato, ma con la giusta logica dell'istruzione IF non è affatto difficile.
Questo tipo di logica richiede la combinazione di un'istruzione IF annidata e di un paio di istruzioni OR. Ecco come apparirà questa dichiarazione:
=IF(OR(B2='YES',C2='YES'),IF(OR(D2='YES',E2='YES'),'Yearly Maintenance','Routine Maintenance'),'')
Ecco come appaiono i risultati:
È notevole il tipo di analisi complessa che puoi eseguire semplicemente combinando vari operatori logici all'interno di istruzioni IF annidate.
Risultati basati su intervalli di valori
Spesso è molto utile convertire gli intervalli di valori in un qualche tipo di risultato di testo. Questo potrebbe essere semplice come convertire una temperatura da 0 a 50 gradi F in 'Freddo', da 50 a 80 come 'Caldo' e qualsiasi cosa oltre 80 come calda.
Gli insegnanti probabilmente hanno più bisogno di questa logica a causa dei punteggi delle lettere. Nell'esempio seguente esploreremo come convertire un valore numerico in testo basato proprio su un tale intervallo.
Supponiamo che un insegnante utilizzi i seguenti intervalli per determinare il voto in lettere:
- da 90 a 100 è un LA
- da 80 a 90 è un si bemolle
- da 70 a 80 è un Do
- da 60 a 70 è un RE
- Under 60 è un F
Ecco come apparirà questo tipo di istruzione IF multi-nidificata:
=IF(B2>89,'A',IF(B2>79,'B',IF(B2>69,'C',IF(B2>59,'D','F'))))
Ogni nido è l'intervallo successivo della serie. Devi solo stare molto attento a chiudere l'istruzione con il giusto numero di parentesi o la funzione non funzionerà correttamente.
Ecco come appare il foglio risultante:
Come puoi vedere, questo ti permette di rappresentare qualsiasi numero sotto forma di una stringa descrittiva. Si aggiornerà automaticamente anche se il valore numerico sul foglio cambia.
L'uso della logica IF-THEN è potente
Come programmatore, conosci già il potere delle istruzioni IF. Ti consentono di automatizzare l'analisi logica in qualsiasi calcolo. Questo è molto potente in un linguaggio di scripting, ma come puoi vedere è altrettanto potente all'interno delle celle di un foglio di calcolo Excel.
Con un po' di creatività si può fare qualcosa cose molto impressionanti con la logica dell'istruzione IF e altre formule in Excel.
Che tipo di logica univoca hai escogitato usando le istruzioni IF in Excel? Condividi le tue idee e suggerimenti nella sezione commenti qui sotto!
Condividere Condividere Tweet E-mail 5 suggerimenti per potenziare le tue macchine Linux VirtualBoxStanchi delle scarse prestazioni offerte dalle macchine virtuali? Ecco cosa dovresti fare per aumentare le prestazioni di VirtualBox.
Leggi Avanti Argomenti correlati- Programmazione
- Foglio di calcolo
- Microsoft Excel
Ryan ha una laurea in ingegneria elettrica. Ha lavorato 13 anni nell'ingegneria dell'automazione, 5 anni nell'IT e ora è un ingegnere delle app. Ex caporedattore di MakeUseOf, ha parlato a conferenze nazionali sulla visualizzazione dei dati ed è apparso su TV e radio nazionali.
Altro da Ryan DubeIscriviti alla nostra Newsletter
Iscriviti alla nostra newsletter per suggerimenti tecnici, recensioni, ebook gratuiti e offerte esclusive!
Clicca qui per iscriverti