Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Power query - semplicissimo

159 views
Skip to first unread message

I M MdM

unread,
May 17, 2021, 9:57:22 AM5/17/21
to
Ho il problema di inserire nello stesso istogramma un'ultima barra che
rappresenta il valore dello stesso indicatore per il livello superiore
della variabile. Mi spiego con un esempio semplificativo elementare:
accanto alle barre che rappresentano la % di tasso di mortalità delle
province della Toscana volevo mettere il dato della Regione Toscana
tutta assieme (numeratore = somma dei numeratori delle province,
denominatore somma dei denominatori).

Per fare questo non sapendo nulla di VBA ma avendo invece una qualche
pratica rudimentale di Access ho provato a cimentarmi con Power query
per creare la tabella con il riepilogo per regione - volendo continuare
l'esempio di prima - e accodarla alla tabella precedente dei dati per
provincia.

La sensazione di stare sparando con un cannone ai passeri è concreta
(per caso avreste un suggerimento per raggiungere questo scopo in modo
più immediato?), ma il mio problema in questo momento è un altro: di
solito Power Query serve per pescare dati dai più remoti angoli della
Galassia, mentre io modestamente prendo una tabella di un solo file
excel, creo alcune righe nuove col "Raggruppa per" e poi le accodo alle
precedenti, sempre nello stesso file. Come posso fare per rendere
"portabile" il file, cioè fargli capire che deve prendere i dati da sé
stesso per creare l'accoda, senza specificare per la ricerca del file un
percorso del disco che cambia a seconda dell'utente?

Bruno Campanini

unread,
May 17, 2021, 10:38:06 AM5/17/21
to
> Ho il problema di inserire nello stesso istogramma un'ultima barra che
> rappresenta il valore dello stesso indicatore per il livello superiore della
> variabile. Mi spiego con un esempio semplificativo elementare: accanto alle
> barre che rappresentano la % di tasso di mortalità delle province della
> Toscana volevo mettere il dato della Regione Toscana tutta assieme
> (numeratore = somma dei numeratori delle province, denominatore somma dei
> denominatori).
Qual è la struttura della tabella (range) che contiene per ciascuna
provincia il numeratore e denominatore donde si deriva il tasso
di mortalità?

Bruno

MdM

unread,
May 19, 2021, 3:13:54 PM5/19/21
to
Il giorno lunedì 17 maggio 2021 alle 16:38:06 UTC+2 Bruno Campanini ha scritto:
>
> Qual è la struttura della tabella (range) che contiene per ciascuna
> provincia il numeratore e denominatore donde si deriva il tasso
> di mortalità?

Abbi pazienza, sono talmente alle prime armi che anche il concetto di struttura di una tabella mi è oscuro. Vuoi la lista dei record?

Bruno Campanini

unread,
May 20, 2021, 6:35:29 AM5/20/21
to
No, vorrei la composizione dei record, cioè l'intestazione dei
campi (nella circostanza l'intestazione delle colonne) che li
compongono.
Ma se vuoi inviare la lista dei record... poi da lì si desume il tutto.

Bruno

Elio Buonocore

unread,
May 29, 2021, 10:09:08 AM5/29/21
to
Il tuo problema è quello di creare da un'unica tabella dati una tabella con aggiornamento dinamico della stessa tabella al quale si accoda un record costruito con funzioni di aggregazione (nel tuo caso la media) sulla stessa tabella; poco importa se la tabella di origine dati è sullo stesso file o è esterna al file.
Nel primo caso l'istruzione
Origine = Excel.CurrentWorkbook(){[Name="TabMortalità"]}[Content]
crea la connessione alla tua tabella ( si assume che si chiami TabMortalità)
Nel secondo caso ci sono tecniche per dinamizzare l'origine dati in modo che se il file con le istruzioni Power Query viene aperto su altro PC dove l'origine dati ha un'indirizzo diverso non sia necessario aprire il codice di Power Query per sovrascrivere il percorso dell'origine dati. È possibile inserire il percorso dell'origine dati in una cella di un foglio di Excel del file con le istruzioni Power Query e istruire Power Query a derivare il percorso da quella cella. In sostanza ad un collega mandi sia il file di origine dati che quello di analisi; il collega li mette dove vuole, anche quindi in folders diversi, e aggiorna sul file Power Query l'origine dati, semplicemente scrivendo il percorso in una cela. In Power Query è tutto abbastanza semplice, ovviamente puoi risolvere anche in VBA ma onestamente non ne vedo la necessità a meno uno non abbia una versione così vecchia di Excel che non supporti Power Query.

Ciao
Elio

Elio Buonocore

unread,
May 29, 2021, 10:23:57 AM5/29/21
to
Aggiungo che l' impiego fruttuoso del VBA lo vedo in un diverso scenario. Lo scenario potrebbe essere quello di un archivio statico su un file Excel che derivi gli aggiornamenti da un file esterno. In tal caso Power query ti può importare i nuovi aggiornamenti, creare un clone in connessione dell'archivio; accodare i dati in una nuova tabella dinamica ma non accodare gli stessi alla tabella statica. Pertanto il successivo aggiornamento perderebbe i dati dell'aggiornamento precedente. Qui il VBA può dare un'istruzione di aggiornamento a Power Query; raccogliere i nuovi records e accodarli alla tabella statica. In sostanza tutto il lavoro della connessione (ovunque sia l'oggetto nella 'Galassia' e quale il suo formato) ed eventuale filtro/pulitura dei dati lo fa Power Query e il VBA in locale copia i record da una tabella all'altra. Se l'origine dati è già un archivio non vedo che ruolo strategico abbia il VBA.
Elio

I M MdM

unread,
Jun 7, 2021, 6:31:04 AM6/7/21
to
Il 29/05/2021 16:09, Elio Buonocore ha scritto:
>
> Il tuo problema è quello di creare da un'unica tabella dati una tabella con aggiornamento dinamico della stessa tabella al quale si accoda un record costruito con funzioni di aggregazione (nel tuo caso la media) sulla stessa tabella; poco importa se la tabella di origine dati è sullo stesso file o è esterna al file.
> Nel primo caso l'istruzione
> Origine = Excel.CurrentWorkbook(){[Name="TabMortalità"]}[Content]
> crea la connessione alla tua tabella ( si assume che si chiami TabMortalità)
> Nel secondo caso ci sono tecniche per dinamizzare l'origine dati in modo che se il file con le istruzioni Power Query viene aperto su altro PC dove l'origine dati ha un'indirizzo diverso non sia necessario aprire il codice di Power Query per sovrascrivere il percorso dell'origine dati. È possibile inserire il percorso dell'origine dati in una cella di un foglio di Excel del file con le istruzioni Power Query e istruire Power Query a derivare il percorso da quella cella

Scusa se ti rispondo solo adesso. Grazie mille! Ho cercato anche su
altri forum e mi hanno spiegato proprio questo trucco (come lo chiamano?
workaround?) da altre parti. Proverò...


casanmaner

unread,
Apr 26, 2022, 1:21:56 PM4/26/22
to
Il giorno sabato 29 maggio 2021 alle 16:09:08 UTC+2 Elio Buonocore ha scritto:

> Nel secondo caso ci sono tecniche per dinamizzare l'origine dati in modo che se il file con le istruzioni Power Query viene aperto su altro PC dove l'origine dati ha un'indirizzo diverso non sia necessario aprire il codice di Power Query per sovrascrivere il percorso dell'origine dati. È possibile inserire il percorso dell'origine dati in una cella di un foglio di Excel del file con le istruzioni Power Query e istruire Power Query a derivare il percorso da quella cella. In sostanza ad un collega mandi sia il file di origine dati che quello di analisi; il collega li mette dove vuole, anche quindi in folders diversi, e aggiorna sul file Power Query l'origine dati, semplicemente scrivendo il percorso in una cela. In Power Query è tutto abbastanza semplice, ovviamente puoi risolvere anche in VBA ma onestamente non ne vedo la necessità a meno uno non abbia una versione così vecchia di Excel che non supporti Power Query.
>

Ciao Elio,
riprendo questo vecchio post per chiederti un esempio per dinamizzare l'origine dati.
Sto provando ad utilizzare powerquery che è effettivamente potente ma vedo che l'origine viene inserita nella formula.
C'è modo di collegare tale "formula", per quanto riguarda l'origine dei dati, anche esterni, ad una cella?

ciao
0 new messages