Excel Get & Transform CSV:有没有办法只将新数据从 CSV 导入数据模型

Posted

技术标签:

【中文标题】Excel Get & Transform CSV:有没有办法只将新数据从 CSV 导入数据模型【英文标题】:Excel Get & Transform CSV: Is there a way to import only new data from a CSV to the data model 【发布时间】:2020-01-22 08:27:13 【问题描述】:

我目前在 Excel 中有一个查询,用于从 YearToDate CSV 文件导入数据,它仅作为连接进行转换和加载。 我目前有两个单元格指示最后一个条目,另一个单元格计算查询中的数据行数。我将此信息包含在工作表中。 CSV 每天更新一次,查询将数据刷新到我的电子表格中,其中我有各种数据透视表和度量。 该文件显然每天都在变大。我正在过滤掉大部分不需要的数据,但是查询需要很长时间。

所以问题是,是否可以配置查询以查看最后一个条目是什么并刷新或仅将查询应用于新数据。意思是只从最后一个条目加载而不是重新加载整个数据集?

也许它实际上是这样做的,我没有意识到,但它似乎很慢。 CSV 位于共享网络文件夹中。

此外,它可能需要加载整个 CSV 才能查看数据,在这种情况下,我的问题得到了回答。

感谢您的帮助?

【问题讨论】:

【参考方案1】:

您已经回答了自己的问题:需要先导入整个 CSV 文件,然后才能应用任何过滤器。

【讨论】:

【参考方案2】:

您可以创建一个新的、快速的查询,只获取最后一行,然后仅在需要时刷新大的查询。新的可以这样工作:

let
    Source = Csv.Document(File.Contents("C:\test.csv"),[Delimiter=",", Columns=1, Encoding=65001, QuoteStyle=QuoteStyle.None]),
    #"Changed Type" = Table.TransformColumnTypes(Source,"Column1", type text),
    #"Kept Last Rows" = Table.LastN(#"Changed Type", 1)
in
    #"Kept Last Rows"

性能始终取决于您所做的转换,因此这个转换应该比您的完整查询快得多

编辑我误解了你的问题,你基本上想要 PowerPivot 的增量刷新,对吗?不支持,模型会完全刷新

【讨论】:

两者都正确,我意识到需要先加载数据集才能完成任何操作。 Stachu,我希望我知道什么是增量刷新,我现在要尝试找出它。但感谢您在上面的输入。它没有浪费在我身上。

以上是关于Excel Get & Transform CSV:有没有办法只将新数据从 CSV 导入数据模型的主要内容,如果未能解决你的问题,请参考以下文章

Excel Power Query 拆分表格顶部/底部 50%

使用GD&GET vars的图像缩略图

vue通过get方法下载java服务器excel模板

未完成Excel创建目录

如何在 Power Query 中引用包含斜杠的字段名称

LINQ Transform / Pivot