Ricerche nelle formule di PowerPivot

Importante :  Il presente articolo è stato tradotto automaticamente, vedere la dichiarazione di non responsabilità. Per visualizzare la versione inglese dell'articolo, fare clic qui.

Una delle caratteristiche più potenti in PowerPivot è la possibilità di creare relazioni tra tabelle e di usare le tabelle correlate per cercare o filtrare i dati correlati. È possibile recuperare valori correlati da tabelle usando il linguaggio delle formule fornito con PowerPivot, cioè Data Analysis Expressions (DAX). In DAX viene usato un modello relazionale e pertanto è possibile recuperare facilmente e in modo accurato valori correlati o corrispondenti in un'altra tabella o colonna. Questa funzionalità di PowerPivot è simile alla funzione VLOOKUP di Excel, ma molto più semplice da implementare.

È possibile creare formule che eseguono ricerche come parte di una colonna calcolata o come parte di una misura per l'utilizzo in una tabella pivot o grafico pivot. Per ulteriori informazioni, vedere gli argomenti seguenti:

Campi calcolati in Power Pivot

Colonne calcolate in PowerPivot

In questa sezione vengono descritte le funzioni DAX fornite per la ricerca e vengono forniti alcuni esempi relativi all'utilizzo delle funzioni.

Nota : A seconda del tipo di operazione di ricerca o di formula di ricerca che si desidera utilizzare, potrebbe essere necessario prima creare una relazione tra le tabelle.

Informazioni sulle funzioni di ricerca

La possibilità di cercare dati corrispondenti o correlati di un'altra tabella è particolarmente utile nelle situazioni in cui nella tabella corrente è incluso solo un identificatore di qualche tipo, ma i dati necessari, ad esempio il prezzo del prodotto, il nome o altri valori dettagliati, sono archiviati in una tabella correlata. È inoltre utile quando vi sono più righe in un'altra tabella correlate alla riga o al valore corrente. Ad esempio, è possibile recuperare facilmente tutte le vendite associate a una particolare area, a un punto vendita o a un venditore.

A differenza delle funzioni di ricerca di Excel quali VLOOKUP, basate sulle matrici, o LOOKUP tramite cui viene ottenuto il primo di più valori corrispondenti, in DAX vengono seguite le relazioni esistenti tra le tabelle unite in base alle chiavi per ottenere il singolo valore correlato esattamente corrispondente. DAX consente inoltre di recuperare una tabella di record correlati al record corrente.

Nota : Se si ha familiarità con i database relazionali, è possibile pensare alle ricerche in PowerPivot come a un'istruzione di selezione secondaria annidata in Transact-SQL.

Recupero di un singolo valore correlato

Tramite la funzione RELATED viene restituito un solo valore di un'altra tabella correlata al valore corrente nella tabella corrente. Specificando la colonna in cui sono contenuti i dati desiderati, la funzione segue le relazioni esistenti tra tabelle per recuperare il valore dalla colonna specificata nella tabella correlata. In alcuni casi, la funzione deve seguire una catena di relazioni per recuperare i dati.

Si supponga, ad esempio, di disporre di un elenco delle spedizioni di oggi in Excel. Nell'elenco è contenuto tuttavia solo un numero di ID dipendente, un numero di ID ordine e un numero di ID spedizioniere, rendendo difficile la lettura del report. Per ottenere le informazioni aggiuntive che si desidera, è possibile convertire l'elenco in una tabella collegata di PowerPivot e quindi creare relazioni alle tabelle Dipendente e Rivenditore, abbinando EmployeeID al campo EmployeeKey e ResellerID al campo ResellerKey.

Per visualizzare le informazioni sulla ricerca nella tabella collegata, si aggiungono due nuove colonne calcolate, con le formule seguenti:

= RELATED('Employees'[EmployeeName])
= RELATED('Resellers'[CompanyName])

Spedizioni odierna prima della ricerca

OrderID

EmployeeID

ResellerID

100314

230

445

100315

15

445

100316

76

108

Tabella Dipendenti

EmployeeID

Employee

Reseller

230

Kuppa Vamsi

Modular Cycle Systems

15

Pilar Ackeman

Modular Cycle Systems

76

Kim Ralls

Associated Bikes

Spedizioni odierna con ricerche

OrderID

EmployeeID

ResellerID

Employee

Reseller

100314

230

445

Kuppa Vamsi

Modular Cycle Systems

100315

15

445

Pilar Ackeman

Modular Cycle Systems

100316

76

108

Kim Ralls

Associated Bikes

Nella funzione vengono utilizzate le relazioni tra la tabella collegata e la tabella di dipendenti e dei venditori per ottenere il nome corretto per ogni riga del report. È inoltre possibile utilizzare i valori correlati per i calcoli. Per ulteriori informazioni ed esempi, vedere Funzione RELATED.

Recupero di un elenco di valori correlati

Tramite la funzione RELATEDTABLE viene seguita una relazione esistente e restituita una tabella in cui sono contenute tutte le righe corrispondenti della tabella specificata. Si supponga, ad esempio, che si desideri sapere quanti ordini ogni rivenditore abbia posizionato nell'anno corrente. È possibile creare una nuova colonna calcolata nella tabella Resellers che include la formula seguente che cerca i record per ogni rivenditori nella tabella ResellerSales_USD e conta il numero di ordini singoli inseriti da ogni rivenditore. Queste tabelle sono parte della cartella di lavoro dell'esempio di DAX. Per ulteriori informazioni sui dati di esempio, vedere Recuperare i dati di esempio per DAX e il modello di dati (Esercitazioni).

=COUNTROWS(RELATEDTABLE(ResellerSales_USD))

In questa formula tramite la funzione RELATEDTABLE viene innanzitutto ottenuto il valore ResellerKey per ogni rivenditore nella tabella corrente. Non è necessario specificare la colonna ID nella formula, in quanto PowerPivot usa la relazione esistente tra le tabelle. La funzione RELATEDTABLE ottiene quindi tutte le righe dalla tabella ResellerSales_USD correlata a ogni rivenditore e conta le righe. Se non esiste alcuna relazione (diretta o indiretta) tra le due tabelle, si otterranno tutte le righe dalla tabella ResellerSales_USD.

Per il rivenditore Modular Cycle Systems nel database di esempio, ci sono quattro ordini nella tabella delle vendite, pertanto la funzione restituisce il valore 4. Se per il rivenditore Associated Bikes non sono presenti vendite, pertanto la funzione restituisce un valore vuoto.

Reseller

Registra nella tabella delle vendite per questo rivenditore

Modular Cycle Systems

Reseller ID

SalesOrderNumber

445

SO53494

445

SO71872

445

SO65233

445

SO59000

Reseller ID

SalesOrderNumber

Associated Bikes

Nota : Poiché tramite la funzione RELATEDTABLE viene restituita una tabella e non un singolo valore, deve essere utilizzata come argomento in un'altra funzione tramite cui vengono eseguite operazioni nelle tabelle. Per ulteriori informazioni, vedere Funzione RELATEDTABLE.

Torna all'inizio

Nota : Dichiarazione di non responsabilità per la traduzione automatica: Il presente articolo è stato tradotto tramite un software di traduzione automatica e non da una persona. Microsoft offre le traduzioni automatiche per consentire a coloro che non conoscono la lingua inglese di leggere gli articoli sui prodotti, sui servizi e sulle tecnologie Microsoft. Dal momento che l'articolo è stato tradotto automaticamente, potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli.

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

Queste informazioni sono risultate utili?

Grazie per i tuoi commenti e suggerimenti

Grazie per il tuo feedback! Potrebbe essere utile metterti in contatto con uno dei nostri operatori del supporto di Office.

×