Accedi a Microsoft
Accedi o crea un account.
Salve,
Select a different account.
Hai più account
Scegli l'account con cui vuoi accedere.

In questa sezione sono disponibili collegamenti ad esempi che illustrano l'uso delle formule DAX negli scenari seguenti.

  • Esecuzione di calcoli complessi

  • Uso di testo e date

  • Valori condizionali e test per gli errori

  • Uso della funzionalità di business intelligence per le gerarchie tempo

  • Classificazione e confronto di valori

Contenuto dell'articolo

Introduzione

Visitare il Wiki del Centro risorse DAX in cui è possibile trovare tutti i tipi di informazioni su DAX, inclusi blog, esempi, whitepaper e video forniti da professionisti leader del settore e Microsoft.

Scenari: Esecuzione di calcoli complessi

Le formule DAX possono eseguire calcoli complessi che implicano aggregazioni personalizzate, filtri e l'uso di valori condizionali. Questa sezione fornisce esempi di come iniziare a usare i calcoli personalizzati.

Creare calcoli personalizzati per una tabella pivot

CALCULATE e CALCULATETABLE sono funzioni potenti e flessibili utili per la definizione dei campi calcolati. Queste funzioni consentono di modificare il contesto in cui verrà eseguito il calcolo. È anche possibile personalizzare il tipo di aggregazione o di operazione matematica da eseguire. Per esempi, vedere gli argomenti seguenti.

Applicare un filtro a una formula

Nella maggior parte dei casi in cui una funzione DAX accetta una tabella come argomento, in genere è possibile passare una tabella filtrata, usando la funzione FILTRO invece del nome della tabella o specificando un'espressione di filtro come uno degli argomenti della funzione. Gli argomenti seguenti forniscono esempi su come creare filtri e su come i filtri influiscono sui risultati delle formule. Per altre informazioni, vedere Filtrare i dati nelle formule DAX.

La funzione FILTRO consente di specificare i criteri di filtro usando un'espressione, mentre le altre funzioni sono progettate specificamente per filtrare i valori vuoti.

Rimuovere i filtri in modo selettivo per creare un rapporto dinamico

Creando filtri dinamici nelle formule, è possibile rispondere facilmente a domande come le seguenti:

  • Qual è stato il contributo delle vendite del prodotto corrente al totale delle vendite per l'anno?

  • Quanto ha contribuito questa divisione ai profitti totali per tutti gli anni operativi, rispetto ad altre divisioni?

Le formule usate in una tabella pivot possono essere influenzate dal contesto della tabella pivot, ma è possibile modificare in modo selettivo il contesto aggiungendo o rimuovendo filtri. L'esempio nell'argomento ALL illustra come eseguire questa operazione. Per trovare il rapporto tra le vendite di un rivenditore specifico e le vendite di tutti i rivenditori, creare una misura che calcola il valore per il contesto corrente diviso per il valore per il contesto ALL.

L'argomento ALLEXCEPT fornisce un esempio di come cancellare in modo selettivo i filtri in una formula. Entrambi gli esempi illustrano come cambiano i risultati a seconda della struttura della tabella pivot.

Per altri esempi su come calcolare rapporti e percentuali, vedere gli argomenti seguenti:

Uso di un valore da un ciclo esterno

Oltre a usare i valori del contesto corrente nei calcoli, DAX può usare un valore di un ciclo precedente per creare un set di calcoli correlati. L'argomento seguente illustra come creare una formula che fa riferimento a un valore da un ciclo esterno. La funzione EARLIER supporta fino a due livelli di cicli annidati.

Per altre informazioni sul contesto delle righe e sulle tabelle correlate e su come usare questo concetto nelle formule, vedere Contesto nelle formule DAX.

Scenari: Uso di testo e date

In questa sezione sono disponibili collegamenti ad argomenti di riferimento su DAX che contengono esempi di scenari comuni che implicano l'uso del testo, l'estrazione e la composizione di valori di data e ora o la creazione di valori in base a una condizione.

Creare una colonna chiave tramite concatenazione

Power Pivot non consente chiavi composte; Pertanto, se nell'origine dati sono presenti chiavi composte, potrebbe essere necessario combinarle in un'unica colonna chiave. L'argomento seguente fornisce un esempio di come creare una colonna calcolata basata su una chiave composta.

Comporre una data in base alle parti della data estratte da una data di testo

Power Pivot usa un tipo di dati SQL Server data/ora per usare le date. Pertanto, se i dati esterni contengono date formattate in modo diverso, ad esempio se le date sono scritte in un formato di data locale non riconosciuto dal motore di dati di Power Pivot o se i dati usano chiavi surrogate intere, potrebbe essere necessario usare una formula DAX per estrarre le parti della data e quindi comporre le parti in una rappresentazione di data/ora valida.

Ad esempio, se una colonna di date è stata rappresentata come numero intero e quindi importata come stringa di testo, è possibile convertire la stringa in un valore di data/ora usando la formula seguente:

=DATA(DESTRA([Valore1];4);SINISTRA([Valore1];2),MID([Valore1];2))

Val1

Risultato

01032009

1/3/2009

12132008

12/13/2008

06252007

6/25/2007

Gli argomenti seguenti forniscono altre informazioni sulle funzioni usate per estrarre e comporre date.

Definire un formato di data o numero personalizzato

Se i dati contengono date o numeri non rappresentati in uno dei formati di testo Windows standard, è possibile definire un formato personalizzato per assicurarsi che i valori vengano gestiti correttamente. Questi formati vengono usati per la conversione di valori in stringhe o da stringhe. Gli argomenti seguenti forniscono anche un elenco dettagliato dei formati predefiniti disponibili per l'uso di date e numeri.

Modificare i tipi di dati usando una formula

In Power Pivot, il tipo di dati dell'output è determinato dalle colonne di origine e non è possibile specificare in modo esplicito il tipo di dati del risultato, perché il tipo di dati ottimale è determinato da Power Pivot. Tuttavia, è possibile usare le conversioni implicite dei tipi di dati eseguite da Power Pivot per modificare il tipo di dati di output. 

  • Per convertire una data o una stringa numerica in un numero, moltiplicare per 1,0. Ad esempio, la formula seguente calcola la data corrente meno 3 giorni e restituisce il valore intero corrispondente.

    =(OGGI()-3)*1,0

  • Per convertire una data, un numero o un valore di valuta in una stringa, concatenare il valore con una stringa vuota. Ad esempio, la formula seguente restituisce la data odierna come stringa.

    =""& OGGI()

È anche possibile usare le funzioni seguenti per assicurarsi che un determinato tipo di dati sia restituito:

Convertire numeri reali in numeri interi

Scenario: valori condizionali e test per gli errori

Come Excel, DAX include funzioni che consentono di testare i valori nei dati e restituire un valore diverso in base a una condizione. Ad esempio, è possibile creare una colonna calcolata che etichetta i rivenditori come Preferito o Valore a seconda dell'importo delle vendite annuale. Le funzioni che testano i valori sono utili anche per controllare l'intervallo o il tipo di valori, per evitare errori imprevisti nei calcoli.

Creare un valore in base a una condizione

È possibile usare condizioni SE annidate per testare i valori e generare nuovi valori in modo condizionale. Gli argomenti seguenti contengono alcuni semplici esempi di elaborazione condizionale e valori condizionali:

Verificare la presenza di errori all'interno di una formula

A Excel, non è possibile avere valori validi in una riga di una colonna calcolata e valori non validi in un'altra riga. Se si verifica un errore in una parte qualsiasi di una colonna di Power Pivot, l'intera colonna viene contrassegnata con un errore, quindi è necessario correggere sempre gli errori di formula che causano valori non validi.

Ad esempio, se si crea una formula che divide per zero, è possibile che venga restituito il risultato infinito o un errore. Alcune formule avranno esito negativo anche se la funzione rileva un valore vuoto quando prevede un valore numerico. Durante lo sviluppo del modello di dati, è meglio consentire la visualizzazione degli errori in modo da poter fare clic sul messaggio e risolvere il problema. Tuttavia, quando si pubblicano cartelle di lavoro, è consigliabile incorporare la gestione degli errori per evitare che valori imprevisti causano errori nei calcoli.

Per evitare la restituzione di errori in una colonna calcolata, si usa una combinazione di funzioni logiche e di informazioni per verificare la presenza di errori e restituire sempre valori validi. Gli argomenti seguenti forniscono alcuni semplici esempi di come eseguire questa operazione in DAX:

Scenari: Uso della funzionalità di Business Intelligence per le gerarchie temporali

Le funzioni di business intelligence per le gerarchie temporali DAX includono funzioni che consentono di recuperare date o intervalli di date dai dati. È quindi possibile usare tali date o intervalli di date per calcolare i valori in periodi simili. Le funzioni di business intelligence per le gerarchie temporali includono anche funzioni che funzionano con intervalli di date standard, per consentire di confrontare i valori tra mesi, anni o trimestri. È anche possibile creare una formula che confronta i valori per la prima e l'ultima data di un periodo specificato.

Per un elenco di tutte le funzioni di business intelligence per le gerarchie temporali, vedere Funzioni di Business Intelligence per le gerarchie temporali (DAX). Per suggerimenti su come usare le date e le ore in modo efficace in un'analisi Power Pivot, vedere Date in Power Pivot.

Calcolare le vendite cumulative

Gli argomenti seguenti contengono esempi di come calcolare i saldi di chiusura e di apertura. Gli esempi consentono di creare saldi in esecuzione in intervalli diversi, ad esempio giorni, mesi, trimestri o anni.

Confrontare i valori nel tempo

Gli argomenti seguenti contengono esempi di come confrontare le somme in diversi periodi di tempo. I periodi di tempo predefiniti supportati da DAX sono mesi, trimestri e anni.

Calcolare un valore in un intervallo di date personalizzato

Vedere gli argomenti seguenti per esempi su come recuperare intervalli di date personalizzati, ad esempio i primi 15 giorni dopo l'inizio di una promozione di vendita.

Se si usano le funzioni di business intelligence per le gerarchie temporali per recuperare un set personalizzato di date, è possibile usare tale set di date come input per una funzione che esegue calcoli, per creare aggregazioni personalizzate in diversi periodi di tempo. Per un esempio di come eseguire questa operazione, vedere l'argomento seguente:

  • Funzione PARALLELPERIOD

    Nota: Se non è necessario specificare un intervallo di date personalizzato, ma si usano unità contabili standard come mesi, trimestri o anni, è consigliabile eseguire calcoli usando le funzioni di business intelligence per le gerarchie temporali progettate per questo scopo, ad esempio TOTALQTD, TOTALMTD, TOTALQTD e così via.

Scenari: classificazione e confronto di valori

Per visualizzare solo il primo n numero di elementi in una colonna o in una tabella pivot, sono disponibili diverse opzioni:

  • È possibile usare le funzionalità di Excel 2010 per creare un filtro In alto. È anche possibile selezionare un numero di primi o ultimi valori in una tabella pivot. La prima parte di questa sezione descrive come filtrare i primi 10 elementi di una tabella pivot. Per altre informazioni, vedere la Excel documentazione.

  • È possibile creare una formula che classifica dinamicamente i valori e quindi filtrare in base ai valori di classificazione oppure usare il valore di classificazione come filtro dei dati. La seconda parte di questa sezione descrive come creare questa formula e quindi usare la classificazione in un filtro dei dati.

Ogni metodo presenta vantaggi e svantaggi.

  • Il Excel Top è facile da usare, ma il filtro è esclusivamente a scopo di visualizzazione. Se i dati sottostanti alla tabella pivot cambiano, è necessario aggiornare manualmente la tabella pivot per visualizzare le modifiche. Se è necessario usare dinamicamente le classificazioni, è possibile usare DAX per creare una formula che confronta i valori con altri valori all'interno di una colonna.

  • La formula DAX è più potente; Inoltre, aggiungendo il valore di classificazione a un filtro dei dati, è sufficiente fare clic sul filtro dei dati per modificare il numero di primi valori visualizzati. Tuttavia, i calcoli sono costosi dal punto di vista computazionale e questo metodo potrebbe non essere adatto per le tabelle con molte righe.

Visualizzare solo i primi dieci elementi di una tabella pivot

Per visualizzare i primi o gli ultimi valori in una tabella pivot

  1. Nella tabella pivot fare clic sulla freccia in giù nell'intestazione Etichette di riga.

  2. Selezionare Filtri valori> primi 10.

  3. Nella finestra di dialogo Filtro primi 10 <nome della colonna>scegliere la colonna da classificare e il numero di valori, come indicato di seguito:

    1. Selezionare In alto per visualizzare le celle con i valori più alti o In basso per visualizzare le celle con i valori più bassi.

    2. Digitare il numero di primi o ultimi valori da visualizzare. Il valore predefinito è 10.

    3. Selezionare la modalità di visualizzazione dei valori:

Nome

Descrizione

Elementi

Selezionare questa opzione per filtrare la tabella pivot in modo da visualizzare solo l'elenco degli elementi primi o degli ultimi in base ai relativi valori.

Percentuale

Selezionare questa opzione per filtrare la tabella pivot in modo da visualizzare solo gli elementi che si aggiungono alla percentuale specificata.

Somma

Selezionare questa opzione per visualizzare la somma dei valori per gli elementi superiore o inferiore.

  1. Selezionare la colonna che contiene i valori da classificare.

  2. Fare clic su OK.

Ordinare gli elementi in modo dinamico usando una formula

L'argomento seguente contiene un esempio di come usare DAX per creare una classificazione archiviata in una colonna calcolata. Poiché le formule DAX vengono calcolate in modo dinamico, è sempre possibile assicurarsi che la classificazione sia corretta anche se i dati sottostanti sono stati modificati. Inoltre, poiché la formula viene usata in una colonna calcolata, è possibile usare la classificazione in un filtro dei dati e quindi selezionare i primi 5, i primi 10 valori o persino i primi 100 valori.

Serve aiuto?

Amplia le tue competenze
Esplora i corsi di formazione
Ottieni in anticipo le nuove caratteristiche
Partecipa a Microsoft Office Insider

Queste informazioni sono risultate utili?

Come valuti la qualità della lingua?
Cosa ha influito sulla tua esperienza?

Grazie per il feedback!

×