0

我在 Power Query 中有此请求,以从 OneDrive 上的文件夹中提取数据。我们将此请求称为“数据”。该文件夹最初包含 29 列的 csv 文件,最后两列是“y”和“z”。与我的工作相关的新 CSV 文件包含 2 个附加列(+ 与以前的 csv 相同的 29 个),称为“w”和“x”,它们位于 y 和 z 之前;按该顺序将总列增加到 31 列以 w,x,y,z 结尾。我认为将新的 CSV 文件添加到文件夹会自动将新列添加到请求中,并为之前 CSV 文件中没有 w 和 x 的行提供空值。但是,Power Query 的内置源代码从添加 w 和 x 的请求中删除了列 y 和 z;似乎代码根据原始请求返回固定数量的列“

let Source = Folder.Files("C:\file-location"),
#"Autres colonnes supprimées" = Table.SelectColumns(Source,{"Content"}),
#"Fichiers masqués filtrés1" = Table.SelectRows(#"Autres colonnes supprimées", each [Attributes]?[Hidden]? <> true),
#"Appeler une fonction personnalisée1" = Table.AddColumn(#"Fichiers masqués filtrés1", "Transformer le fichier", each #"Transformer le fichier"([Content])),
#"Autres colonnes supprimées1" = Table.SelectColumns(#"Appeler une fonction personnalisée1", {"Transformer le fichier"}),
#"Colonne de tables développée1" = Table.ExpandTableColumn(#"Autres colonnes supprimées1", "Transformer le fichier", Table.ColumnNames(#"Transformer le fichier"(#"Exemple de fichier")))

如果您需要其他信息来帮助我解决此问题,请告诉我。这是机密工作,所以我不能公开分享文件或列名。干杯

4

1 回答 1

0

合并所有 CSV 文件中的所有列

let Source = Folder.Files("C:\directory\subdirectory"),
#"Filtered Rows" = Table.SelectRows(Source, each ([Extension] = ".csv")),
#"Added Custom" = Table.AddColumn(#"Filtered Rows", "CSV", each Table.PromoteHeaders(Csv.Document([Content]))),
List = List.Union(List.Transform(#"Added Custom"[CSV], each Table.ColumnNames(_))),
#"Expanded CSV" = Table.ExpandTableColumn(#"Added Custom", "CSV", List),
#"Removed Columns" = Table.RemoveColumns(#"Expanded CSV",{"Content", "Extension", "Date accessed", "Date modified", "Date created", "Attributes", "Folder Path"})
in #"Removed Columns"
于 2021-07-02T18:27:14.180 回答