Pagina 1 di 1

Convertire dati in una tabella

Inviato: mer 11 mag 2022, 21:49
da Alex63
Buona sera a tutti, chiedo un consiglio su come trasformare dei dati in linea su Excel in una classica tabella db.
Allego un esempio che meglio chiarisce dove vorrei arrivare.

Convertire dati in una tabella

Inviato: mer 11 mag 2022, 21:54
da Andrea90
Alex63,

Se hai modo di modificare le intestazioni (non due righe di intestazioni, ma una sola) allora ti basta una semplice operazione di unpivot, altrimenti devi complicare di più il codice per riuscire ad ottenere il risultato desiderato.

Andrea

Convertire dati in una tabella

Inviato: mer 11 mag 2022, 22:43
da Alex63
Purtroppo mi servono i due valori è la classica situazione di confronto tra vendite e budget.

Convertire dati in una tabella

Inviato: mer 11 mag 2022, 22:51
da Andrea90
Alex63,

Non puoi avere due intestazioni uguali, PowerQuery trasforma i dati in tabella ed in tabella le due intestazioni uguali non sono concesse.
Non ti sto dicendo di perdere le informazioni, ti sto chiedendo se i dati che hai mostrato escono già in questo formato (magari estratto da un gestionale) o sono semplicemente così perché sei solito visualizzarli in questo modo.

Andrea

Convertire dati in una tabella

Inviato: mer 11 mag 2022, 23:00
da Alex63
Perdonami ma non ho capito la tua domanda sarà l'orario... l'Excel nasce da un valore complessivo in quantità e Valore che gli utenti riempiono, poi successivamente spacchetto nei vari periodi. Tu come lo imposteresti eventualmente?

Convertire dati in una tabella

Inviato: mer 11 mag 2022, 23:14
da Andrea90
Alex63,

Premetto che ripenserei a come vengono inseriti i dati (non conosco la tua procedura, ne il modo di lavorare della tua azienda pertanto è praticamente impossibile dirti come fare). Cercherei comunque di mettere i dati per lo più in riga (le date diventano righe e non colonne, dove tra l'altro non puoi associare la stessa data a due colonne distinte in PQ, poiché l'editor in automatico aggiungerà un "_1" per distinguerle.

Comunque ti allego una bozza, partendo da un caricamento da cartella.

Il file che hai girato diventa la base dati, poi con un secondo file estrapoli i dati dal foglio che contiene le informazioni necessarie.

Quando caricherai la query dovrai modificare il percorso di origine della base dati, poiché al momento sta pescando dal mio Desktop.

Andrea

Convertire dati in una tabella

Inviato: mer 11 mag 2022, 23:50
da Alex63
Grazie per il suggerimento provo a lavorarci su.
Buana serata

Convertire dati in una tabella

Inviato: gio 12 mag 2022, 11:34
da Enrico Galli
Ciao, ti allego la soluzione che utilizzo io in questi casi

Codice: Seleziona tutto

// Tabella2
let
    Origine = Excel.CurrentWorkbook(){[Name="Tabella2"]}[Content],
    #"Trasposta colonna" = Table.Transpose(Origine),
    #"Merge di colonne" = Table.CombineColumns(Table.TransformColumnTypes(#"Trasposta colonna", {{"Column1", type text}}, "it-IT"),{"Column1", "Column2"},Combiner.CombineTextByDelimiter("_", QuoteStyle.None),"Sottoposto a merge"),
    #"Trasposta colonna1" = Table.Transpose(#"Merge di colonne"),
    #"Intestazioni alzate di livello" = Table.PromoteHeaders(#"Trasposta colonna1", [PromoteAllScalars=true]),
    #"Trasformate altre colonne tramite UnPivot" = Table.UnpivotOtherColumns(#"Intestazioni alzate di livello", {"_Codice Articolo", "_Articolo", "_Codice Cliente", "_Cliente"}, "Attributo", "Valore"),
    #"Suddividi colonna in base al delimitatore" = Table.SplitColumn(#"Trasformate altre colonne tramite UnPivot", "Attributo", Splitter.SplitTextByDelimiter("_", QuoteStyle.Csv), {"Attributo.1", "Attributo.2"}),
    #"Colonna trasformata tramite Pivot" = Table.Pivot(#"Suddividi colonna in base al delimitatore", List.Distinct(#"Suddividi colonna in base al delimitatore"[Attributo.2]), "Attributo.2", "Valore", List.Sum),
    #"Rinominate colonne" = Table.RenameColumns(#"Colonna trasformata tramite Pivot",{{"_Codice Articolo", "Codice Articolo"}, {"_Articolo", "Articolo"}, {"_Codice Cliente", "Codice Cliente"}, {"_Cliente", "Cliente"}, {"Attributo.1", "Data"}}),
    #"Modificato tipo" = Table.TransformColumnTypes(#"Rinominate colonne",{{"Codice Articolo", Int64.Type}, {"Codice Cliente", Int64.Type}, {"Quantita", Int64.Type}, {"Valore", Int64.Type}, {"Articolo", type text}, {"Cliente", type text}, {"Data", type datetime}}),
    #"Data estratta" = Table.TransformColumns(#"Modificato tipo",{{"Data", DateTime.Date, type date}})
in
    #"Data estratta"

Convertire dati in una tabella

Inviato: gio 12 mag 2022, 22:03
da Alex63
Grazie!! :thumbup: