Stránka 1 z 1

Power Pivot pro Excel

Napsal: 13 lis 2022 12:37
od sginfo
Dobrý den,
mám 12 excelovských souborů, jenž každý představuje měsíc v roce. Jedná se o denní záznamy, které bych chtěl vyhodnocovat v jediné kontingenční tabulce. Jelikož má každý soubor více jak 300 tis. řádků, nelze je spojit do jednoho excelovského listu. Normálně postupuji tak, že je spojím v MS Access (nahraji 1 tabulku a osatní "přihrávám do této první tabulky" a ten používám jako zdroj dat pro MS Excel. Chtěl bych zkusit využít Power Pivot pro Excel v MS Excel, ale zde je každý zdroj dat samostanou tabulkou. Dotaz zní: Lze přihrát do jednoho listu Power Pivot pro Excel další data (jejich doplnění/aktualizace), lze tyto listy spojit?

Možná to nelze z filosofie konstrukce Power Pivot pro Excel: nějak se dívám, že on ta data do listu jako nekládá finálně jako vlastník, ale že je na zdrojová data napojen... nevím Nebo by to šlo řešit kombinovaným dotazem při importu dat v Power Pivot pro Exel?

Ještě jsem se díval, že je v MS Editor Power Query, vypadá to podobně jako Power Pivot, můžete někdo zjedodušeně pospat rozdíl mezi podaplikacemi? případně, můj problém řešti v Power Query? misto Power Pivot?
Děkuji za rady
sg

Dodatečně přidáno po 24 minutách 17 vteřinách:
Vlastně řeším, jak více zdrojů dat, se stejnou strukturou mohu spojit v jeden zdroj dat....

Re: Power Pivot pro Excel

Napsal: 13 lis 2022 15:32
od elninoslov
Tie mesačné súbory sú v jednom adresári? V PowerQuery ich spojíte do jedného dotazu a dáte načítať do dátového modelu a následne do KT, alebo rovno z dotazu do KT.

Re: Power Pivot pro Excel

Napsal: 13 lis 2022 18:29
od sginfo
Ano jsou v jednom adresáři, ale nevím jak je spojit do jednoho dotazu, nemůžete mě prosím navést?
Tak, aby například kontingenční tabulka se k nim chovala jako k jednomu zdroji dat a ne k 12 subdatům...

Re: Power Pivot pro Excel

Napsal: 15 lis 2022 20:28
od elninoslov
Príklad 4M riadkov.
Súborom "Vytvor pokusné súbory 300 000 riadkov.xlsm" si vytvorte pokusné náhodné súbory s dátami. Bude ich vytvárať asi 2 min.

V zlučovacom súbore si vytvorte Tabuľku "tblCesta", kde bude iba hlavička "Cesta" a hodnota bude vzorec
SK

Kód: Vybrat vše

=LEFT(CELL("filename";A1);FIND("[";CELL("filename";A1))-1)&"Data v mesiacoch\"

CZ

Kód: Vybrat vše

=ZLEVA(POLÍČKO("filename";A1);NAJÍT("[";POLÍČKO("filename";A1))-1)&"Data v mesiacoch\"

Potom v PQ dotaz "Spoj_Mesiace":

Kód: Vybrat vše

let
    Zdroj = Folder.Files(Excel.CurrentWorkbook(){[Name="tblCesta"]}[Content]{0}[Cesta]),
    #"Vyvolaná vlastná funkcia" = Table.AddColumn(Zdroj, "Data", each fnc_Obsah_Listu([Content])),
    Stlpce = Table.ColumnNames(#"Vyvolaná vlastná funkcia"{0}[Data]),
    #"Odstránené ostatné stĺpce" = Table.SelectColumns(#"Vyvolaná vlastná funkcia",{"Data"}),
    #"Rozbalené Data" = Table.ExpandTableColumn(#"Odstránené ostatné stĺpce", "Data", Stlpce),
    #"Zmenený typ" = Table.TransformColumnTypes(#"Rozbalené Data",{{"Dátum", type date}, {"Čas", type time}, {"Cena", Currency.Type}, {"Počet", Int64.Type}, {"Export", type text}, {"Poznámka", type text}, {"Pracovník", type text}, {"Hala", type text}, {"SN", type text}, {"ID", type text}})
in
    #"Zmenený typ"

a vlastná funkcia "fnc_Obsah_Listu":

Kód: Vybrat vše

(Subor as binary) as table =>
let
    Zdroj = Table.PromoteHeaders(Excel.Workbook(Subor){0}[Data], [PromoteAllScalars=true])
in
    Zdroj

"Načítať do" - "Vytvoriť iba pripojenie" a "Pridať tieto údaje do dátového modelu"

Potom z PowerPivot-u dajte vytvoriť KT. Cvične som daj podľa mien a mesiacov Počet a Cena a nechce sa mi nahrávať 140MB súbor :(