我的excel工作簿中有一个名为ResultsTable的表,该表中有一个文件路径
C:\ Users \ XXXX \ OneDrive-WORK \ Digital 土壤\数据\结果
我有一个Query,它应该从文件夹中获取所有excel文件,并将数据转换为类似如下的有用内容:
let
Source = Folder.Files("ResultsTable"),
#"Filtered Hidden Files1" = Table.SelectRows(Source, each [Attributes]?[Hidden]? <> true),
#"Invoke Custom Function1" = Table.AddColumn(#"Filtered Hidden Files1", "Transform File from Analyseresultater", each #"Transform File from Analyseresultater"([Content])),
#"Renamed Columns1" = Table.RenameColumns(#"Invoke Custom Function1", {"Name", "Source.Name"}),
#"Removed Other Columns1" = Table.SelectColumns(#"Renamed Columns1", {"Source.Name", "Transform File from Analyseresultater"}),
#"Expanded Table Column1" = Table.ExpandTableColumn(#"Removed Other Columns1", "Transform File from Analyseresultater", Table.ColumnNames(#"Transform File from Analyseresultater"(#"Sample File"))),
#"Removed Other Columns" = Table.SelectColumns(#"Expanded Table Column1",{"Key", "Attribute", "Value"})
in
#"Removed Other Columns"
但是我得到了错误
DataFormat.Error:提供的文件夹路径必须是有效的绝对路径 路径。细节: 结果表
我希望有人可以帮助我解决这个错误:)
编辑:添加了有关如何设置表格的屏幕截图
答案 0 :(得分:1)
您可以像这样修改代码,
let
FilePath = Excel.CurrentWorkbook(){[Name="ResultsTable"]}[Content][Path to results]{0},
Source = Folder.Files(FilePath),
在原始代码中,Folder.Files()
接收的是文字文本“ ResultsTable”,而不是ResultsTable中的单元格值。您需要首先使用Excel.CurrentWorkbook()
选取单元格值,然后将其传递给Folder.Files()
。