早之前也尝试过用PowerQuery展开过文本,一直很正常,直到前两天,突然发现Excel2016的PowerQuery展开文本时,有一些异常动作。
从下面的代码可以看到,出现了一个“自定义函数1”及其调用。
let
源 = Folder.Files("C:\Users\wangh\Desktop\马大花"),
筛选的行 =Table.SelectRows(源, each ([Extension] = ".txt")),
删除的其他列 = Table.SelectColumns(筛选的行,{"Content", "Name"}),
调用自定义函数1 = Table.AddColumn(删除的其他列, "从 马大花 (2) 转换二进制文件", each #"从 马大花 (2) 转换二进制文件"([Content])),
删除的其他列1 = Table.SelectColumns(调用自定义函数1, {"从 马大花 (2) 转换二进制文件"}),
扩展的表格列1 = Table.ExpandTableColumn(删除的其他列1, "从 马大花 (2) 转换二进制文件",
Table.ColumnNames(删除的其他列1[#"从 马大花 (2) 转换二进制文件"]{0}))
in
扩展的表格列1
检查用户界面,左侧查询列表多了一个包含两个层级的文件夹及四个查询。我是在已有查询的基础上,通过“新建源”添加的文本文件源,因此这个“示例二进制参数1”是新增的,原来的查询里,并没有参数:
不知道是怎么回事。
最后我只好自己修改代码,调用Csv.Content()函数来获取txt文本内容:
源 = Folder.Files("C:\Users\wangh\Desktop\马大花"),
筛选的行 = Table.SelectRows(源, each ([Extension] = ".txt")),
删除的其他列 = Table.SelectColumns(筛选的行,{"Name", "Content"}),
已添加自定义1 = Table.AddColumn(删除的其他列, "展开TXT", each Csv.Document([Content])),