Creare una relazione tra tabelle in Excel

Se in passato si è usato CERCA.VERT per importare una colonna da una tabella in un'altra tabella, ora che in Excel 2013 è disponibile un modello di dati incorporato, CERCA.VERT è una funzionalità obsoleta. È possibile creare una relazione tra due tabelle di dati in base ai dati corrispondenti in ogni tabella. In seguito, è possibile creare fogli Power View e compilare tabelle pivot e altri rapporti con i campi di ogni tabella, anche quando le tabelle derivano da origini diverse. Ad esempio, se sono stati importati i dati relativi alle vendite dei clienti, è possibile aggiungere e correlare dati di Business Intelligence per le gerarchie temporali per analizzare gli schemi delle vendite per anno e per mese.

Tutte le tabelle presenti in una cartella di lavoro sono elencate negli elenchi dei campi della tabella pivot e Power View.

Quando si importano tabelle correlate da un database relazionale, spesso Excel può creare queste relazioni nel modello di dati durante la fase di compilazione in background. In tutti gli altri casi, sarà necessario creare manualmente le relazioni.

  1. Verificare che nella cartella di lavoro siano contenute almeno due tabelle e che in ogni tabella sia inclusa una colonna di cui è possibile eseguire il mapping a una colonna in un'altra tabella.
  2. Formattare i dati come tabella oppure

Importare i dati esterni come una tabella in un nuovo foglio di lavoro.

  1. Assegnare a ogni tabella un nome significativo: In Strumenti tabella fare clic su Progettazione > Nome tabella e immettere un nome.
  2. Verificare che la colonna in una delle tabelle presenti valori di dati univoci senza duplicati. Excel può creare la relazione solo se una colonna contiene valori univoci.

Per correlare ad esempio le vendite dei clienti con i dati di Business Intelligence per le gerarchie temporali, in entrambe le tabelle devono essere presenti date nello stesso formato, ad esempio 01/01/2012, e in almeno una tabella (quella con i dati di Business Intelligence per le gerarchie temporali), ogni data deve essere elencata una sola volta all'interno della colonna.

  1. Fare clic su Dati > Relazioni.

Se l'opzione Relazioni non è disponibile, significa che la cartella di lavoro contiene una sola tabella.

  1. Nella finestra di dialogo Gestisci relazioni fare clic su Nuova.
  2. Nella casella Crea relazione fare clic sulla freccia in giù accanto a Tabella e selezionare una tabella nell'elenco a discesa. Questa tabella deve trovarsi sul lato "molti" di una relazione "uno-a-molti". Se si usa l'esempio relativo al rapporto tra Business Intelligence per le gerarchie temporali e clienti, è necessario innanzitutto scegliere la tabella relativa alle vendite dei clienti, in quanto è probabile che in uno stesso giorno si verifichino molte vendite.
  3. Per Colonna (esterna) selezionare la colonna contenente i dati correlati a Colonna correlata (primaria). Ad esempio, se si dispone di una colonna di date in entrambe le tabelle, è necessario scegliere ora questa colonna.
  4. Per Tabella correlata selezionare una tabella in cui sia presente almeno una colonna di dati correlata alla tabella appena selezionata per Tabella.
  5. Per Colonna correlata (primaria) selezionare una colonna in cui siano disponibili valori univoci che corrispondono ai valori della colonna selezionata per Colonna.
  6. Fare clic su OK.
Altre informazioni sulle relazioni tra tabelle in Excel


Note sulle relazioni

  • Sarà possibile conoscere l'eventuale esistenza di una relazione quando si trascinano campi di tabelle diverse nell'elenco dei campi della tabella pivot. Se non viene richiesto di creare una relazione significa che in Excel sono già disponibili le informazioni sulle relazioni necessarie per la correlazione dei dati.
  • La creazione di relazioni è simile all'utilizzo delle funzioni VLOOKUP: sono necessarie colonne contenenti dati corrispondenti in modo che tramite Excel sia possibile effettuare un riferimento incrociato tra le righe di una tabella e quelle di un'altra. Nell'esempio relativo a Business Intelligence per le gerarchie temporali, è consigliabile che nella tabella Customer siano presenti valori di data disponibili anche nella tabella Business Intelligence per le gerarchie temporali.
  • In un modello di dati le relazioni tra tabelle possono essere di tipo uno-a-uno (ogni passeggero dispone di una carta d'imbarco) o uno-a-molti (ogni volo ha molti passeggeri), ma non molti-a-molti. Le relazioni molti-a-molti creano errori di dipendenza circolari, ad esempio "È stata rilevata una dipendenza circolare". Questo errore si verifica se si crea una connessione diretta tra due tabelle di tipo molti-a-molti oppure connessioni indirette, ovvero una catena di relazioni tra tabelle di tipo uno-a-molti all'interno di ogni relazione, ma che risultano molti-molti quando sono visualizzate end-to-end. Per altre informazioni, vedere Relazioni tra tabelle in un modello di dati.
  • I tipi di dati nelle due colonne devono essere compatibili. Per altre informazioni, vedere Tipi di dati nei modelli di dati di Excel.
  • Esistono altri modi più intuitivi per creare relazioni, soprattutto se non si è sicuri delle colonne da usare. Per altre informazioni, vedere Creare una relazione nella vista diagramma in Power Pivot.

Esempio: Correlazione di dati di Business Intelligence per le gerarchie temporali ai dati di volo di una compagnia aerea

È possibile ottenere informazioni sulle relazioni tra tabelle e sulla funzionalità di Business Intelligence per le gerarchie temporali usando i dati disponibili gratuitamente in Microsoft Azure Marketplace. Alcuni di questi set di dati sono molto estesi e richiedono una connessione Internet veloce per completare il download dei dati in tempi ragionevoli.

  1. Avviare il componente aggiuntivo Power Pivot in Microsoft Excel 2013 e aprire la finestra di Power Pivot.
  2. Fare clic su Recupera dati esterni > Da servizio dati > Da Microsoft Azure Marketplace. La home page di Microsoft Azure Marketplace verrà aperta nell'Importazione guidata tabella.
  3. In Prezzo fare clic su Gratuito.
  4. In Categoria fare clic su Scienza e statistica.
  5. Individuare DateStream e fare clic su Sottoscrivi. Per ulteriori informazioni, vedere la pagina relativa al feed di dati di Business Intelligence per le gerarchie temporali.
  6. Immettere l'account Microsoft e fare clic su Accedi. Nella finestra verrà visualizzata un'anteprima dei dati.
  7. Scorrere fino alla fine e fare clic su Query di selezione.
  8. Fare clic su Avanti.
  9. Scegliere BasicCalendarItalian quindi fare clic su Fine per importare i dati. Su una connessione Internet veloce l'importazione dovrebbe richiedere un minuto circa. Al termine dovrebbe essere visualizzato un rapporto di stato di 73.414 righe trasferite. Fare clic su Chiudi.
  10. Fare clic su Recupera dati esterni > Da servizio dati > Da Microsoft Azure Marketplace per importare un secondo set di dati.
  11. In Tipo fare clic su Dati.
  12. In Prezzo fare clic su Gratuito.
  13. Individuare US Air Carrier Flight Delays e fare clic su Seleziona.
  14. Scorrere fino alla fine e fare clic su Query di selezione.
  15. Fare clic su Avanti.
  16. Fare clic su Fine per importare i dati. Su una connessione Internet veloce l'importazione può richiedere 15 . Al termine dovrebbe essere visualizzato un rapporto di stato di 2.427.284 righe trasferite. Fare clic su Chiudi. Nel modello di dati dovrebbero essere presenti due tabelle. Per creare una relazione, è necessario che in ogni tabella siano presenti colonne compatibili.
  17. La colonna DateKey in BasicCalendarUS è nel formato 1/1/2012 12:00:00 AM. Nella tabella On_Time_Performance è presente anche una colonna data e ora, FlightDate, i cui valori sono specificati nello stesso formato: 1/1/2012 12:00:00 AM. Le due colonne contengono dati corrispondenti, dello stesso tipo di dati, e almeno una delle colonne (DateKey) contiene solo valori univoci. Nei passaggi successivi si useranno queste colonne per la correlazione delle tabelle.
  18. Nella finestra di Power Pivot fare clic su Tabella pivot per creare una tabella pivot in un foglio di lavoro nuovo o esistente.
  19. Nell'elenco dei campi espandere On_Time_Performance e fare clic su ArrDelayMinutes per aggiungere i dati all'area Valori. Nella tabella pivot dovrebbe essere indicata la quantità totale di tempo di ritardo dei voli, espressa in minuti.
  20. Espandere BasicCalendarUS e fare clic su MonthInCalendar per aggiungere i dati all'area Righe.
  21. Nella tabella pivot ora sono elencati i mesi, ma la somma totale dei minuti è la stessa ogni mese. La presenza di valori identici ripetuti indica che è necessaria una relazione.
  22. Nell'elenco dei campi fare clic su Crea in “Potrebbero essere necessarie relazioni tra le tabelle”.
  23. In Tabella correlata selezionare On_Time_Performance e in Colonna correlata (primaria) scegliere FlightDate.
  24. In Tabella selezionare BasicCalendarUS e in Colonna (esterna) scegliere DateKey. Fare clic su OK per creare la relazione.
  25. Si noti che ora la somma dei minuti di ritardo varia per ogni mese.
  26. In BasicCalendarUS trascinare YearKey nell'area Righe sopra MonthInCalendar.

A questo punto è possibile applicare un filtro per i ritardi dei voli in arrivo per anno e mese o altri valori nel calendario.

 Suggerimento    Per impostazione predefinita, i mesi sono elencati in ordine alfabetico. Con il componente aggiuntivo Power Pivot è possibile modificare l'ordinamento e visualizzare i mesi in ordine cronologico.

  1. Accertarsi che la tabella BasicCalendarUS sia aperta nella finestra di Power Pivot .
  2. Nella tabella Home fare clic su Ordina per colonna .
  3. In Ordina scegliere MonthInCalendar
  4. In Per scegliere MonthOfYear .

Nella tabella pivot ogni combinazione mese-anno (ottobre 2011, novembre 2011) è ordinata per numero di mese all'interno di un anno (10, 11). È facile modificare l'ordinamento poiché il feed DateStream fornisce tutte le colonne necessarie per il funzionamento di questo scenario. Se si utilizza una diversa tabella di dati di Business Intelligence per le gerarchie temporali, il passaggio sarà diverso.

"Potrebbero essere necessarie relazioni tra le tabelle"

Mentre si aggiungono campi a una tabella pivot, viene indicato se è necessaria una relazione tra tabelle per fare in modo che i campi selezionati nella tabella pivot siano significativi.

Il pulsante Crea viene visualizzato quando è necessaria una relazione

Anche se viene indicato quanto è necessaria una relazione, non viene specificato quali tabelle e colonne usare o se sia possibile una relazione. Per ottenere le risposte necessario, provare i passaggi seguenti.

Passaggio 1: Determinare quali tabelle specificare nella relazione

Se nel modello sono incluse solo alcune tabelle, potrebbe risultare immediatamente evidente quali occorre utilizzare, ma per i modelli più estesi è probabile che sia necessaria qualche indicazione. Un approccio consiste nell'usare la vista diagramma nel componente aggiuntivo Power Pivot. La vista diagramma offre una rappresentazione visiva di tutte le tabelle presenti nel modello di dati e consente di determinare rapidamente quali tabelle sono separate dal resto del modello.

Vista diagramma con le tabelle disconnesse

 Nota    È possibile creare relazioni ambigue che non risultano valide quando vengono usate in un r o in un report Power View. Si supponga che tutte le tabelle siano correlate in qualche modo alle altre tabelle nel modello, ma quando si tenta di combinare i campi di diverse tabelle, viene visualizzato il messaggio “Potrebbero essere necessarie relazioni tra le tabelle”. La causa più probabile è che si tratti di una relazione molti-a-molti. Se si segue la catena delle relazioni di tabella che si connettono alle tabelle che si desidera usare, si scoprirà probabilmente che sono presenti due o più relazioni uno-a-molti. Non esiste una soluzione alternativa adatta per ogni situazione, ma si può provare a creare colonne calcolate per consolidare le colonne da usare in una sola tabella.

Passaggio 2: Individuare le colonne che possono essere usate per creare un percorso da una tabella all'altra

Dopo aver identificato quale tabella è disconnessa dal resto del modello, esaminarne le colonne per determinare se un'altra colonna, in un altro punto del modello, contiene valori corrispondenti.

Si supponga ad esempio di avere un modello contenente le vendite dei prodotti per area e che in seguito vengano importati dati demografici per scoprire se esiste una correlazione tra vendite e tendenze demografiche in ogni area. Poiché i dati demografici provengono da un'origine dati diversa, le relative tabelle sono inizialmente isolate dal resto del modello. Per integrare i dati demografici con il resto del modello, sarà necessario individuare una colonna in una delle tabelle demografiche che corrisponda a una già in uso. Se ad esempio i dati demografici sono organizzati per regione e i dati delle vendite specificano la regione in cui è avvenuta la vendita, sarà possibile correlare i due set di dati individuando una colonna comune, ad esempio provincia, CAP o area geografica, per consentire la ricerca.

Oltre ai valori corrispondenti, esistono alcuni requisiti aggiuntivi per la creazione di una relazione:

  • I valori dei dati nella colonna di ricerca devono essere univoci. In altri termini, nella colonna non possono essere contenuti duplicati. In un modello di dati le stringhe Null e vuote sono equivalenti a un valore vuoto, cioè un valore di dati distinto. Ciò vuole dire che non è possibile avere più valori Null nella colonna di ricerca.
  • I tipi di dati nella colonna di origine e nella colonna di ricerca devono essere compatibili. Per ulteriori informazioni sui tipi di dati, vedere Tipi di dati nei modelli di dati.

Per ulteriori informazioni sulle relazioni delle tabelle, vedere Relazioni tra tabelle nel modello di dati.

Inizio pagina Inizio pagina

 
 
Si applica a:
Excel 2013, Power Pivot in Excel 2013