Power BI加载* .htm文件另存为.xls

时间:2018-10-04 12:30:49

标签: powerbi

我有一个要求,我必须导入一个保存为。* htm,。* html

.xls 文件。

打开文件并单击另存为,通常会显示文件所在的格式,这就是它的外观-

File Format

File

我单击Binary,它显示了.xls文件,并以 Excel工作簿,csv,文本,html,xml 的形式打开了它,但是它没有用:-

以Excel Workbook打开它会给我这个错误-外部表格未采用预期格式。

我们如何将其加载到Power BI中。数据存在于Sheet1中,从第5行开始。我一直在尝试通过加载来解决这个问题。

我无法手动将文件编辑和重新保存为.xlsx,因为它无法自动执行。 另请注意,将其另存为.xlsx文件,即可正常工作。但这不是我所需要的。

请帮助我。

我确实参考了这篇文章-但我对M查询不熟悉

https://social.technet.microsoft.com/Forums/en-US/c58f8b19-b2d6-4ef6-890b-f10c62c0096f/external-table-is-not-in-the-expected-format?forum=powerquery

其他类似问题-https://www.experts-exchange.com/questions/29064908/HTML-Excel-file-Power-Query-BI-Connection-can-this-be-done.html

这是我的M代码的样子,

let
    Source = Folder.Files("\\serverA\ShareB$\Desktop"),
    #"Filtered Rows" = Table.SelectRows(Source, each ([Extension] = ".xls")),
    #"Filtered Rows1" = Table.SelectRows(#"Filtered Rows", let latest = List.Max(#"Filtered Rows"[Date created]) in each [Date created] = latest),
    #"\\serverA\ShareB$\Desktop\_Raw Data Dump 2018-Oct-4 6-00-53 AM xls" = #"Filtered Rows1"{[#"Folder Path"="\\serverA\ShareB$\Desktop\",Name="Raw Data Dump 2018-Oct-4 6-00-53 AM.xls"]}[Content]
in
    #"\\ServerA\ShareB$\Desktop\_Raw Data Dump 2018-Oct-4 6-00-53 AM xls"

在此处添加示例文件以供参考,有关文件类型-

  

https://www.glump.net/_media/howto/web/serve-html-as-an-excel-file-from-a-web-application/example-html.xls.zip

     

我在链接上尝试了上述文件,并且产生了相同的结果   错误。所以,这里的问题是如何在上面的链接中加载文件   可以在Power BI中使用,而无需手动更改文件。

1 个答案:

答案 0 :(得分:2)

使用链接的示例文件,我可以使用Web.Page而不是Excel.Workboook加载文件,然后单击下面显示的表格:

Query Editor

我的完整查询如下:

let
    Source = Folder.Files("C:\Users\aolson\Downloads\example-html.xls"),
    #"Filtered Rows" = Table.SelectRows(Source, each ([Extension] = ".xls")),
    #"C:\Users\aolson\Downloads\example-html xls\_example-html xls" = #"Filtered Rows"{[#"Folder Path"="C:\Users\aolson\Downloads\example-html.xls\",Name="example-html.xls"]}[Content],
    #"Imported Excel" = Web.Page(#"C:\Users\aolson\Downloads\example-html xls\_example-html xls"){0}[Data]
in
    #"Imported Excel"

注意:单击上面指示的表等同于选择Data列和第0行中的单元格值,因此选择{0}[Data]