Ricalcolare le formule in PowerPivot

Si applica a
Excel per Microsoft 365 Excel 2024 Excel 2021 Excel 2019 Excel 2016

Quando si usano i dati in Power Pivot, di tanto in tanto potrebbe essere necessario aggiornare i dati dell'origine, ricalcolare le formule create nelle colonne calcolate o verificare che i dati presentati in una tabella pivot siano aggiornati.

Questo argomento illustra la differenza tra l'aggiornamento dei dati e il ricalcolo dei dati, viene fornita una panoramica dell'attivazione del ricalcolo e vengono descritte le opzioni per il controllo del ricalcolo.

Differenza tra aggiornamento dei dati e ricalcolo

Power Pivot usa sia l'aggiornamento che il ricalcolo dei dati:

Aggiornare i dati significa ottenere dati aggiornati da origini dati esterne. Power Pivot non rileva automaticamente le modifiche nelle origini dati esterne, ma i dati possono essere aggiornati manualmente dalla finestra Power Pivot o automaticamente se la cartella di lavoro viene condivisa in SharePoint.

Ricalcolo significa aggiornare tutte le colonne, le tabelle, i grafici e le tabelle pivot nella cartella di lavoro che contengono formule. Poiché il ricalcolo di una formula comporta un costo in termini di prestazioni, è importante comprendere le dipendenze associate a ogni calcolo.

Importante

Non è consigliabile salvare o pubblicare la cartella di lavoro fino a quando le formule in essa contenute non sono state ricalcolate.

Ricalcolo manuale e automatico

Per impostazione predefinita, Power Pivot viene ricalcolato automaticamente in base alle esigenze, ottimizzando il tempo necessario per l'elaborazione. Anche se il ricalcolo può richiedere tempo, si tratta di un'attività importante perché durante il ricalcolo vengono controllate le dipendenze delle colonne e si riceverà una notifica se una colonna è stata modificata, se i dati non sono validi o se è apparso un errore in una formula che in precedenza funzionava. È tuttavia possibile rinunciare alla convalida e aggiornare i calcoli solo manualmente, soprattutto se si utilizzano formule complesse o set di dati di grandi dimensioni e si vuole controllare la tempistica degli aggiornamenti.

Sia la modalità manuale che quella automatica presentano vantaggi; È tuttavia consigliabile usare la modalità di ricalcolo automatico. Questa modalità mantiene sincronizzati i metadati di Power Pivot e previene i problemi causati dall'eliminazione dei dati, dalle modifiche ai nomi o ai tipi di dati o dalle dipendenze mancanti. 

Utilizzo del ricalcolo automatico

Quando si usa la modalità di ricalcolo automatico, qualsiasi modifica ai dati che comporterebbe la modifica del risultato di una formula attiverà il ricalcolo dell'intera colonna che contiene una formula. Le modifiche seguenti richiedono sempre il ricalcolo delle formule:

  • I valori di un'origine dati esterna sono stati aggiornati.
  • La definizione della formula è cambiata.
  • Sono stati modificati i nomi delle tabelle o delle colonne a cui viene fatto riferimento in una formula.
  • Le relazioni tra tabelle sono state aggiunte, modificate o eliminate.
  • Sono state aggiunte nuove misure o colonne calcolate.
  • Sono state apportate modifiche ad altre formule all'interno della cartella di lavoro, quindi le colonne o i calcoli che dipendono da tale calcolo devono essere aggiornati.
  • Le righe sono state inserite o eliminate.
  • È stato applicato un filtro che richiede l'esecuzione di una query per aggiornare il set di dati. Il filtro potrebbe essere stato applicato in una formula o come parte di una tabella pivot o di un grafico pivot.

Uso del ricalcolo manuale

È possibile usare il ricalcolo manuale per evitare di incorrere nel costo del calcolo dei risultati delle formule fino a quando non si è pronti. La modalità manuale è particolarmente utile nelle situazioni seguenti:

  • Si sta progettando una formula usando un modello e si vogliono modificare i nomi delle colonne e delle tabelle usate nella formula prima di convalidarla.
  • Si sa che alcuni dati nella cartella di lavoro sono stati modificati, ma si sta usando un'altra colonna che non è stata modificata, quindi si vuole posticipare il ricalcolo.
  • Si sta lavorando in una cartella di lavoro che presenta molte dipendenze e si desidera rinviare il ricalcolo finché non si è certi che siano state apportate tutte le modifiche necessarie.

Si noti che, finché la cartella di lavoro è impostata sulla modalità di calcolo manuale, Power Pivot in Excel non esegue alcuna convalida o controllo delle formule, con i risultati seguenti:

  • Tutte le nuove formule aggiunte alla cartella di lavoro verranno contrassegnate come contenenti un errore.
  • Nelle nuove colonne calcolate non verranno visualizzati risultati.

Per configurare la cartella di lavoro per il ricalcolo manuale

  1. In Power Pivotfare clicsu >Progettazione Calcoli>Opzioni> di calcoloModalità di calcolo manuale.
  2. Per ricalcolare tutte le tabelle, fare clic su Opzioni di calcolo>Calcola ora.
    Nelle formule nella cartella di lavoro viene verificata la presenza di errori e le tabelle vengono aggiornate con i risultati se presenti. A seconda della quantità di dati e del numero di calcoli, la cartella di lavoro potrebbe smettere di rispondere per qualche istante.

Importante

Prima di pubblicare la cartella di lavoro, è consigliabile impostare di nuovo la modalità di calcolo su automatica. Ciò consente di evitare problemi durante la progettazione delle formule.

Risoluzione dei problemi relativi al ricalcolo

Dipendenze

Quando una colonna dipende da un'altra colonna e il contenuto di quest'altra colonna cambia in qualsiasi modo, potrebbe essere necessario ricalcolare tutte le colonne correlate. Ogni volta che vengono apportate modifiche alla cartella di lavoro di Power Pivot, Power Pivot in Excel esegue un'analisi dei dati di Power Pivot esistenti per determinare se è necessario ricalcolare ed esegue l'aggiornamento nel modo più efficiente possibile.

Si supponga, ad esempio, di avere una tabella Vendite correlata alle tabelle Prodotto e CategoriaProdotto. e le formule nella tabella Vendite dipendono da entrambe le altre tabelle. Qualsiasi modifica apportata alle tabelle Prodotto o CategoriaProdotto causerà il ricalcolo di tutte le colonne calcolate nella tabella Vendite . Ciò ha senso se si considera che potrebbero essere presenti formule che raggruppano le vendite per categoria o per prodotto. Pertanto, per essere sicuri che i risultati siano corretti; Le formule basate sui dati devono essere ricalcolate.

Power Pivot esegue sempre un ricalcolo completo di una tabella, perché un ricalcolo completo è più efficiente del controllo dei valori modificati. Le modifiche che attivano il ricalcolo possono includere modifiche importanti, come l'eliminazione di una colonna, la modifica del tipo di dati numerici di una colonna o l'aggiunta di una nuova colonna. Tuttavia, modifiche apparentemente banali, come la modifica del nome di una colonna, potrebbero anche attivare il ricalcolo. Questo perché i nomi delle colonne vengono usati come identificatori nelle formule.

In alcuni casi, Power Pivot può determinare che le colonne possono essere escluse dal ricalcolo. Se, ad esempio, si ha una formula che cerca un valore come [Colore prodotto] nella tabella Prodotti e la colonna modificata è [Quantità] nella tabella Vendite , non è necessario ricalcolare la formula, anche se le tabelle Vendite e Prodotti sono correlate. Se invece si dispone di formule che si basano su Vendite[Quantità], è necessario eseguire il ricalcolo.

Sequenza di ricalcolo per le colonne dipendenti

Le dipendenze vengono calcolate prima di qualsiasi ricalcolo. Se sono presenti più colonne che dipendono l'una dall'altra, Power Pivot segue la sequenza delle dipendenze. Ciò garantisce che le colonne vengano elaborate nell'ordine giusto alla massima velocità.

Transazioni

Le operazioni di ricalcolo o aggiornamento dei dati vengono eseguite come transazione. Ciò significa che se una parte dell'operazione di aggiornamento non riesce, viene eseguito il rollback delle operazioni rimanenti. Questo per evitare che i dati vengano lasciati in uno stato parzialmente elaborato. Non è possibile gestire le transazioni come in un database relazionale o creare checkpoint.

Ricalcolo delle funzioni volatili

Alcune funzioni, come ADESSO, CASUALE o OGGI, non hanno valori fissi. Per evitare problemi di prestazioni, l'esecuzione di una query o di un filtro in genere non causa la rivalutazione di tali funzioni se vengono usate in una colonna calcolata. I risultati di queste funzioni vengono ricalcolati solo quando viene ricalcolata l'intera colonna. Tra queste situazioni è incluso l'aggiornamento da un'origine dati esterna o la modifica manuale di dati che comporta la rivalutazione di formule contenenti queste funzioni. Tuttavia, le funzioni volatili come ADESSO, CASUALE o OGGI verranno sempre ricalcolate se la funzione viene utilizzata nella definizione di un campo calcolato.