繁体   English   中英

Power Query 中的表组合

[英]Tables combination in Power Query

大家好,提前感谢那些会花时间阅读并可能提供帮助的人。 我确定我的问题非常“愚蠢”,但无论如何我只是在使用 Pwer Query 迈出第一步,所以这就是我的问题。

我有一个包含许多表的文件夹(在单独的文件中),它们都具有非常相同的结构,如下所示:

在此处输入图片说明

我想要实现的是组合该文件夹中的所有表(并且文件的数量将不断增加),知道所有表的列“m”始终相同(它包含从 0 到 100 的值)增加 0.05)。 所以,我想要:

第一个表中的“m”列和“tm”列,然后是所有其他文件(表)的所有“tm”列,标题名称将被文件名替换(因为“m”列总是相同)。

我希望使用 PowerQuery 自动执行此操作,以便每次添加文件(其中包含表,始终具有相同名称)时,都会更新大表。 该表的结构如下:

在此处输入图片说明

(请注意,我会有一些 #N/A,这对我来说没问题——前提是它不会“干扰”Power Query。在制作图表时保留它会对我有所帮助)

你有什么想法吗?

非常感谢,

克里斯

看看这是否有帮助。 粘贴到主页...高级编辑器...并编辑第一行以反映您的实际文件路径

从指定目录中读取所有 .xlsx,合并它们的表,然后在 tm 上进行透视

let Source = Folder.Files("C:\directory\subdirectory\"),
#"Filtered Rows" = Table.SelectRows(Source, each ([Extension] = ".xlsx")),
#"Added Custom" = Table.AddColumn(#"Filtered Rows", "GetFileData", each Excel.Workbook([Content],true)),
#"Expanded GetFileData" = Table.ExpandTableColumn(#"Added Custom", "GetFileData", {"Data", "Hidden", "Item", "Kind", "Name"}, {"Data", "Hidden", "Item", "Kind", "Sheet"}),
#"Remove filename extension" = Table.TransformColumns(#"Expanded GetFileData",{{"Name", each Text.BeforeDelimiter(_,".xlsx")}}),
#"Removed Other Columns" = Table.SelectColumns(#"Remove filename extension",{"Name", "Data"}),
List = List.Union(List.Transform(#"Removed Other Columns"[Data], each Table.ColumnNames(_))),
#"Expanded Data" = Table.ExpandTableColumn(#"Removed Other Columns", "Data", List,List),
#"Pivoted Column" = Table.Pivot(#"Expanded Data", List.Distinct(#"Expanded Data"[Name]), "Name", "tm", List.Sum)
in  #"Pivoted Column"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM