我尝试使用下面的 m 代码将 csv 数据提取到表中,但在提取时无法获取文件名列。
M代码
let
Source = Folder.Files(#"Folder Path"),
#"CombinedBinaries" = Binary.Combine (Source [Content]),
#"ImportedText" = Lines.FromText(Text.FromBinary(CombinedBinaries)),
#"TableFromList" = Table.FromList(ImportedText,
Splitter.SplitTextByDelimiter("#
(tab)"), null, null, ExtraValues.Error)
是否有可能获取文件名以及 CSV 数据?
将所有 CSV 文件合并到可以修改的目录中的示例代码
let Source = Folder.Files("C:\temp"),
#"Filtered Rows" = Table.SelectRows(Source, each [Extension] = ".csv"),
#"Added CSVdata" = Table.AddColumn(#"Filtered Rows", "CSVdata", each Table.PromoteHeaders(Csv.Document([Content])), type table),
#"Added Custom" = Table.AddColumn(#"Added CSVdata", "Custom", each let name = [Name] in Table.AddColumn([CSVdata],"SourceFile", each name)),
#"Combined CSVdata" = Table.Combine(#"Added Custom"[Custom])
in #"Combined CSVdata"
或
let Source = Folder.Files("C:\temp"),
#"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 Data" = Table.ExpandTableColumn(#"Added Custom", "CSV", List,List)
in #"Expanded Data"