Power Query: Istruzione if – if annidati e condizioni multiple
In Power Query di Excel, l’istruzione **if** è una delle funzioni più utilizzate per verificare una condizione e restituire un valore specifico a seconda che il risultato sia **vero** o **falso**. Presenta alcune differenze rispetto alla funzione **SE** di Excel. In questo tutorial ti mostrerò la sintassi dell’istruzione **if**, con esempi semplici e avanzati per aiutarti a padroneggiarla al meglio.
Sintassi di base dell’istruzione if in Power Query
Istruzione if in Power Query tramite colonna condizionale
Istruzione if in Power Query scrivendo codice M
Sintassi di base dell’istruzione if in Power Query
In Power Query, la sintassi è:
- logical_test: La condizione che vuoi verificare.
- value_if_true: Il valore da restituire quando il risultato è VERO.
- value_if_false: Il valore da restituire quando il risultato è FALSO.
In Power Query di Excel, esistono due modi per creare questo tipo di logica condizionale:
- Utilizzo della funzione Colonna condizionale per alcuni scenari di base;
- Scrittura di codice M per scenari avanzati.
Nella sezione seguente presenterò alcuni esempi pratici sull’utilizzo dell’istruzione if.
Istruzione if in Power Query tramite colonna condizionale
Esempio 1: Istruzione if di base
Qui ti spiego come utilizzare l’istruzione if in Power Query. Ad esempio, ho un report sui prodotti come segue: se lo stato del prodotto è “Vecchio”, viene applicato uno sconto del 50 %; se lo stato del prodotto è “Nuovo”, viene applicato uno sconto del 20 %, come mostrato negli screenshot seguenti.

1. Seleziona la tabella dati dal foglio di lavoro; quindi, in Excel 2019 e Excel 365, fai clic su Dati > Da tabella/intervallo. Vedi screenshot:

Nota: In Excel 2016 e Excel 2021, fai clic su Dati>Da tabella, vedi screenshot:

2. Nella finestra aperta di Editor di Power Query, fai clic su Aggiungi colonna > Colonna condizionale. Vedi screenshot:

3. Nella finestra di dialogo Aggiungi colonna condizionale visualizzata, esegui le seguenti operazioni:
- Nome nuova colonna: Inserisci un nome per la nuova colonna;
- Quindi, specifica i criteri necessari. Ad esempio, imposterò: Se Stato è uguale a Vecchio, allora 50 %; altrimenti, 20 %.
- Nome colonna: La colonna su cui valutare la condizione if. Qui seleziono Stato.
- Operatore: L'operatore logico da utilizzare. Le opzioni disponibili variano in base al tipo di dati della colonna selezionata.
- Testo: inizia con, non inizia con, è uguale a, contiene, ecc.
- Numeri: uguale a, diverso da, maggiore o uguale a, ecc.
- Data: precedente a, successiva a, uguale a, diversa da, ecc.
- Valore: Il valore specifico con cui confrontare la valutazione. Insieme al nome della colonna e all’operatore, costituisce una condizione.
- Output: Il valore da restituire quando la condizione è soddisfatta.
- Altrimenti: un altro valore da restituire quando la condizione è falsa.

4. Quindi, fai clic sul pulsante OK per tornare alla finestra dell'Editor di Power Query. Ora è stata aggiunta una nuova colonna Sconto, vedi screenshot:

5. Per formattare i numeri come percentuale, fai clic sull’icona ABC123 nell’intestazione della colonna Sconto, quindi seleziona Percentuale come necessario. Vedi screenshot:

6. Infine, fai clic su Home > Chiudi e carica > Chiudi e carica per caricare questi dati in un nuovo foglio di lavoro.

Esempio 2: Istruzione if complessa
Grazie all’opzione Colonna condizionale, puoi inserire due o più condizioni nella finestra di dialogo Aggiungi colonna condizionale. Ecco come fare:
1. Seleziona la tabella dati e vai alla finestra di Editor di Power Query facendo clic su Dati > Da tabella/intervallo. Nella nuova finestra, fai clic su Aggiungi colonna > Colonna condizionale.
2. Nella finestra di dialogo Aggiungi colonna condizionale visualizzata, esegui le seguenti operazioni:
- Inserisci un nome per la nuova colonna nella casella di testo Nome nuova colonna;
- Specifica il primo criterio nel primo campo criteri, quindi fai clic sul pulsante Aggiungi clausola per aggiungere altri campi criteri secondo necessità.

3. Al termine dell’impostazione dei criteri, fai clic sul pulsante OK per tornare alla finestra dell’Editor di Power Query. Apparirà ora una nuova colonna con il risultato desiderato. Guarda lo screenshot:

4. Infine, fai clic su Home > Chiudi e carica > Chiudi e carica per caricare questi dati in un nuovo foglio di lavoro.
Istruzione if in Power Query scrivendo codice M
In genere, la colonna condizionale è utile per alcuni scenari di base. A volte potrebbe essere necessario utilizzare più condizioni con logica AND o OR. In tal caso, occorre scrivere codice M all’interno di una colonna personalizzata per gestire scenari più complessi.
Esempio 1: Istruzione if di base
Prendendo come esempio i primi dati, se lo stato del prodotto è «Vecchio», visualizzare uno sconto del 50 %; se lo stato del prodotto è «Nuovo», visualizzare uno sconto del 20 %. Per scrivere il codice M, procedere come segue:
1. Seleziona la tabella e fai clic su Dati > Da tabella/intervallo per aprire la finestra dell’Editor di Power Query.
2. Nella finestra aperta, fai clic su Aggiungi colonna > Colonna personalizzata. Vedi lo screenshot:

3. Nella finestra di dialogo Colonna personalizzata visualizzata, esegui le seguenti operazioni:
- Inserisci un nome per la nuova colonna nella casella di testo Nome nuova colonna;
- Quindi, inserisci questa formula: if [Stato] = «Vecchio» then "50 %" else "20 %" nella casella di formula della colonna personalizzata.

4. Quindi, fai clic su OK per chiudere questa finestra di dialogo. Ora otterrai il risultato desiderato:

5. Infine, fai clic su Home > Chiudi e carica > Chiudi e carica per caricare questi dati in un nuovo foglio di lavoro.
Esempio 2: Istruzione if complessa
In genere, per verificare le sottocondizioni, è possibile annidare più istruzioni if. Ad esempio, si consideri la seguente tabella dati. Se il prodotto è «Abito», applicare uno sconto del 50 % al prezzo originale; se il prodotto è «Maglione» o «Felpa», applicare uno sconto del 20 % al prezzo originale; per gli altri prodotti mantenere il prezzo originale.

1. Seleziona la tabella dati e fai clic su Dati > Da tabella/intervallo per aprire la finestra dell’Editor di Power Query.
2. Nella finestra aperta, fai clic su Aggiungi colonna > Colonna personalizzata. Nella finestra di dialogo Colonna personalizzata visualizzata, esegui le seguenti operazioni:
- Inserisci un nome per la nuova colonna nella casella di testo Nome nuova colonna;
- Quindi, inserisci la seguente formula nella casella di formuladella colonna personalizzata.
- = if [Prodotto] = «Abito» then [Prezzo] * 0,5 else
if [Prodotto] = «Maglione» then [Prezzo] * 0,8 else
if [Prodotto] = «Felpa» then [Prezzo] * 0,8
else [Prezzo]

3. Quindi, fai clic sul pulsante OK per tornare alla finestra dell’Editor di Power Query, dove otterrai una nuova colonna con i dati desiderati. Guarda lo screenshot:

4Infine, fai clic su Home>Chiudi e carica>Chiudi e caricaper caricare questi dati in un nuovo foglio di lavoro.
La funzione OR esegue più test logici e restituisce VERO se almeno uno di essi è vero. La sintassi è:
Immagina di avere la seguente tabella e di voler aggiungere una nuova colonna in base a questo criterio: se il prodotto è «Abito» o «T-shirt», il marchio sarà «AAA»; per tutti gli altri prodotti, il marchio sarà «BBB».

1Selezionare la tabella dati e fare clic su Dati>Da tabella/intervalloper aprire la finestra dell’Editor di Power Query.
2Nella finestra aperta, fai clic su Aggiungi colonna>Colonna personalizzata. Nella finestra di dialogo Colonna personalizzatavisualizzata, eseguire le seguenti operazioni:
- Inserisci un nome per la nuova colonna nella casella di testo Nome nuova colonna;
- Quindi, inserisci la seguente formula nella casella di formula della colonna personalizzata.
- = if [Prodotto] = "Abito" or [Prodotto] = "T-shirt" then "AAA"
else «BBB»

3. Quindi, fai clic su OK per tornare alla finestra dell’Editor di Power Query, dove otterrai una nuova colonna con i dati desiderati. Guarda lo screenshot:

4. Infine, fai clic su Home>Chiudi e carica>Chiudi e caricaper caricare questi dati in un nuovo foglio di lavoro.
La logica AND esegue più test logici all’interno di una singola istruzione if. Tutti i test devono essere veri affinché venga restituito un risultato vero. Se anche solo uno dei test è falso, viene restituito un risultato falso. La sintassi è:
Prendendo come esempio i dati precedenti, si vuole creare una nuova colonna con il seguente criterio: se il prodotto è «Abito» e l’ordine supera 300, applicare uno sconto del 50 % al prezzo originale; altrimenti, mantenere il prezzo originale.
1Selezionare la tabella dati e fare clic su Dati>Da tabella/intervalloper aprire la finestra dell’Editor di Power Query.
2Nella finestra aperta, fai clic su Aggiungi colonna>Colonna personalizzata. Nella finestra di dialogo Colonna personalizzatavisualizzata, eseguire le seguenti operazioni:
- Inserisci un nome per la nuova colonna nella casella di testo Nome nuova colonna;
- Quindi, inserisci la seguente formula nella casella di formula della colonna personalizzata.
- = if [Prodotto] = «Abito» and [Ordine] > 300 then [Prezzo]*0,5
else [Prezzo]

3. Quindi, fai clic sul pulsante OKper tornare alla finestra dell’Editor di Power Query, dove si otterrà una nuova colonna con i dati desiderati, vedere lo screenshot:

4. Infine, carica questi dati in un nuovo foglio di lavoro facendo clic su Home > Chiudi e carica > Chiudi e carica.
Istruzione if con logiche OR e AND
Bene, gli esempi precedenti sono semplici da comprendere. Ora rendiamo le cose più complesse: è possibile combinare AND e OR per creare qualsiasi condizione immaginabile, utilizzando le parentesi nella formula per definire regole sofisticate.
Anche in questo caso, facendo riferimento ai dati precedenti, supponiamo di voler creare una nuova colonna secondo il seguente criterio: se il prodotto è «Abito» e la quantità ordinata supera 300, oppure se il prodotto è «Pantaloni» e la quantità ordinata supera 300, visualizza «A+»; in tutti gli altri casi, visualizza «Altro».
1Selezionare la tabella dati e fare clic su Dati>Da tabella/intervalloper aprire la finestra dell’Editor di Power Query.
2Nella finestra aperta, fai clic su Aggiungi colonna>Colonna personalizzata. Nella finestra di dialogo Colonna personalizzatavisualizzata, eseguire le seguenti operazioni:
- Inserisci un nome per la nuova colonna nella casella di testo Nome nuova colonna;
- Quindi, inserisci la seguente formula nella casella di formula della colonna personalizzata.
- =if ([Product] = «Dress» and [Order] > 300 ) or
([Prodotto] = «Pantaloni» and [Ordine] > 300 )
then «A+»
else «Altro»

3Quindi, fai clic su OKper tornare alla finestra dell’Editor di Power Query, dove si otterrà una nuova colonna con i dati desiderati, vedere lo screenshot:

4Infine, carica questi dati in un nuovo foglio di lavoro facendo clic su Home>Chiudi e carica>Chiudi e carica.
Nella casella della formula della colonna personalizzata è possibile utilizzare i seguenti operatori logici:
- = : Uguale a
- : Diverso da
- > : Maggiore di
- >= : Maggiore o uguale a
- < : Minore di
- <= : Minore o uguale a
Migliori Strumenti per la Produttività in Office
Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un’efficienza mai vista prima.Kutools per Excel offre oltre 300 funzionalità avanzate per aumentare la produttività e Risparmia tempo.Clicca qui per ottenere la funzionalità di cui hai più bisogno...
Office Tab Porta l'interfaccia a schede in Office e rende il tuo lavoro molto più semplice
- Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Apri e crea più documenti in nuove schede all’interno della stessa finestra, invece che in finestre separate.
- Aumenta la tua produttività del 50 % e risparmia centinaia di clic del mouse ogni giorno!
Tutti i componenti aggiuntivi di Kutools in un unico programma di installazione.
Kutools for Office è la suite che include componenti aggiuntivi per Excel, Word, Outlook e PowerPoint, oltre a Office Tab Pro: la soluzione ideale per i team che lavorano su diverse app di Office.
- Suite completa— componenti aggiuntivi per Excel, Word, Outlook e PowerPoint + Office Tab Pro
- Un unico programma di installazione, una sola licenza— configurazione in pochi minuti (pronto per MSI)
- Funziona meglio insieme— produttività ottimizzata tra le app di Office
- Prova gratuita di 30 giorni con tutte le funzionalità— nessuna registrazione, nessuna carta di credito
- Miglior rapporto qualità-prezzo— risparmia rispetto all’acquisto dei singoli componenti aggiuntivi