Ricerche nelle formule di PowerPivot

Nota: Riteniamo importante fornire il contenuto della Guida più recente non appena possibile, nella lingua dell'utente. Questa pagina è stata tradotta automaticamente e potrebbe contenere errori di grammatica o imprecisioni. L'intento è quello di rendere fruibile il contenuto. Nella parte inferiore della pagina è possibile indicare se le informazioni sono risultate utili. Questo è l'articolo in lingua inglese per riferimento.

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'uso in una tabella pivot o in un grafico pivot. Per altre 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 (' dipendenti ' [EmployeeName])
= RELATED (' rivenditori ' [CompanyName])

Spedizioni di oggi prima della ricerca

IDOrdine

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 di oggi con ricerche

IDOrdine

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

La funzione usa le relazioni tra la tabella collegata e la tabella dipendenti e rivenditori per ottenere il nome corretto per ogni riga del report. Puoi anche usare i valori correlati per i calcoli. Per altre informazioni ed esempi, Vedi funzione correlata.

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: Dato che la funzione RELATEDTABLE restituisce una tabella, non un singolo valore, deve essere usata come argomento per una funzione che esegue operazioni sulle tabelle. Per altre informazioni, Vedi funzione RELATEDTABLE.

Inizio pagina

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

Queste informazioni sono risultate utili?

Grazie per il feedback!

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

×