Condividi tramite

Totale complessivo Tabella Pivot

Anonimo
2024-01-04T11:49:10+00:00

Ciao,

in un db ho una lista di articoli e relativa categoria con quantità e prezzo. nella pivot ho nelle righe gli articoli e nelle colonne la categoria e vorrei aggiungere i totali complessivi alla fine della tabella (quantità e prezzo) mostrando però nel corpo della pivot solo le quantità

il risultato che vorrei ottenere è questo (senza dover nascondere le colonne come ho fatto al momento)

grazie molte per l'aiuto

ciao

giovanni

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

Risposta accettata dall'autore della domanda

Anonimo
2024-01-05T23:52:48+00:00

Visto che non avevo sonno ho voluto provare a documentarmi un po'.

C'è da dire che se, come dico spesso, con Excel potresti preparare il caffe con Power Query anche il resto della colazione.

Incredibile quello che si può fare.

Questo è il file rielaborato: https://www.dropbox.com/scl/fi/u02y58y7lxq9fbym079c2/Tabella-pivot-totali-complessivi-MS.xlsx?rlkey=ub49uhlv3g0prg2diadq7xd36&dl=0

Ho modificato la query in modo che nel momento in cui venissero aggiunte delle nuove categorie (es. Felpe) le "etichette" di colonna si aggiornino automaticamente senza andare a ritoccare il codice M.

Ho voluto anche aggiungere una colonna che sommi le quantità totali. Per fare questo ho sostituito eventuali vuoti con gli zeri.

Ho spostato alla fine la colonna del prezzo con quello che sicuramente è un "work around" per non dover ritrovare il problema dei riferimenti a nomi fissi in quello che sarebbe un riordino di colonne. Ma sono sicuro che ci sarà un modo per ordinare una data colonna, di cui è noto il nome, spostandola alla fine di una serie di colonne il cui numero e nome può essere variabili.

Ma visto che è un po' tardi ci ho "girato attorno" :-)

Questo è il codice query che ne è scaturito:

let

Origine = Excel.CurrentWorkbook(){[Name="Tabella1"]}[Content], 

FiltraRigheArticoloColoreCategoriaVuote = Table.SelectRows(Origine, each ([Articolo] <> null) and ([Colore] <> null) and ([Categoria] <> null)), 

CambiaTipo = Table.TransformColumnTypes(FiltraRigheArticoloColoreCategoriaVuote,{{"Articolo", type text}, {"Colore", type text}, {"Categoria", type text}, {"Qtà", Int64.Type}, {"Prezzo", type number}}), 

OrdinaCategorie = Table.Sort(CambiaTipo,{{"Categoria", Order.Ascending}}), 

Pivot = Table.Pivot(OrdinaCategorie, List.Distinct(OrdinaCategorie[Categoria]), "Categoria", "Qtà", List.Sum), 

ListaPrezzoCategorie = List.Skip(Table.ColumnNames(Pivot),2), 

ListaCategorie = List.Skip(Table.ColumnNames(Pivot),3), 

SostituitoNull = Table.ReplaceValue(Pivot,null,0,Replacer.ReplaceValue,ListaCategorie), 

RaggruppaColore = Table.Group(SostituitoNull, {"Colore"}, List.Transform(ListaPrezzoCategorie, (x)=> {x, each List.Sum(Table.Column(\_, x))})), 

ColonnaIndice = Table.AddIndexColumn(RaggruppaColore, "Indice", 0, 1, Int64.Type), 

TotaleQta = Table.AddColumn(ColonnaIndice, "Q.tà Totale", each List.Sum(Record.ToList(Table.SelectColumns(ColonnaIndice,ListaCategorie){[Indice]}))), 

RimossaColonnaIndice = Table.RemoveColumns(TotaleQta,{"Indice"}), 

DuplicatoPrezzo = Table.DuplicateColumn(RimossaColonnaIndice, "Prezzo", "Prezzo - Copia"), 

RimossoPrezzo = Table.RemoveColumns(DuplicatoPrezzo,{"Prezzo"}), 

PrezzoTotale = Table.RenameColumns(RimossoPrezzo,{{"Prezzo - Copia", "Prezzo totale"}}) 

in

PrezzoTotale

Giovanni prova se si adatta alla situazione reale e se restituisce sempre i risultati desiderati.

È stato un esperimento per me.

ciao

La risposta è stata utile?

1 persona ha trovato utile questa risposta.
0 commenti Nessun commento

14 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2024-01-11T14:31:33+00:00

    Ciao Casanmaner,

    [...]

    Volevo riportare il codice VBA ma viene incollato in modo tale che lo stesso risulta incomprensibile!

    Ogni tanto anch'io ho problemi nell'incollare il mio codice in una risposta in quanto, nel mio caso, il codice perde tutta la formattazione e appare come una frase continua.

    Quando ciò accade, risolvo il problema incollando il codice nel Blocco note e da lì alla mia risposta.

    ===

    Regards,

    Norman

    Immagine

    La risposta è stata utile?

    1 persona ha trovato utile questa risposta.
    0 commenti Nessun commento
  2. Eleuterio Tedeschi 18,590 Punti di reputazione Moderatore volontario
    2024-01-04T13:56:13+00:00

    ciao,

    non riesco a condividere il file con onedrive poichè mi chiede un indirizzo mail con cui condividerlo (anche se usa la funzione copia link).

    come posso fare?

    grazie

    ciao

    Molto strano, a me permette di condividerlo con chiunque, usa allora un altro servizio cloud.

    Ciao.

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2024-01-04T13:30:04+00:00

    ciao,

    non riesco a condividere il file con onedrive poichè mi chiede un indirizzo mail con cui condividerlo (anche se usa la funzione copia link).

    come posso fare?

    grazie

    ciao

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Eleuterio Tedeschi 18,590 Punti di reputazione Moderatore volontario
    2024-01-04T13:06:27+00:00

    Ciao,

    in un db ho una lista di articoli e relativa categoria con quantità e prezzo. nella pivot ho nelle righe gli articoli e nelle colonne la categoria e vorrei aggiungere i totali complessivi alla fine della tabella (quantità e prezzo) mostrando però nel corpo della pivot solo le quantità

    il risultato che vorrei ottenere è questo (senza dover nascondere le colonne come ho fatto al momento)

    Cortesemente condividi il file con OneDrive? senza la struttura dei dati è complicato darti le indicazioni relative al tuo foglio,

    ciao.

    La risposta è stata utile?

    0 commenti Nessun commento