如何使用PowerQuery访问与PowerQuery关联的元数据?当数据悬停在右侧“工作簿查询”列表中的查询上时显示此数据,显示诸如“上次刷新”等字段。使用Power Query检索Power Query表元数据(Excel 2016)
应用程序:我有一个Excel工作簿,它将几十个来自各种来源,然后由其他下游工作簿使用。我想要创建的是这个输入工作簿中的一个表格,用于在工作簿中显示每个输入表的Power Query的元数据,例如表格最后刷新的时间,具有多少条记录等等,用于验证目的。例如,如果我知道某个文件预计只有64条记录,则只要遇到更多或更少的记录,我就可以标记。
我已经广泛搜查,包括许多博客,高科技板,amazon.com和以下内容:
介绍功率查询(非正式地称为“M”)公式语言:https://msdn.microsoft.com/en-us/library/mt270235.aspx
功率查询(非正式地称为“M”)公式参考:https://msdn.microsoft.com/en-us/library/mt211003.aspx
2016年8月31日更新:看起来吨他以编程方式访问Power Query元数据的功能尚不存在。我希望最终可以得到Power Query表的派克类似于Excel中的PivotTable.RefreshDate属性。 (这也将是不错的有属性链接表。)在我所解决的解决办法是沿着加上一栏,每个功率查询的范围如下:
#"Added Refresh Date" = Table.AddColumn(Source, "RefreshDate", each DateTime.LocalNow())
我可以然后从表中的任何记录的字段RefreshDate中检索查询表的刷新日期。我对这种方法的困难是它增加了计算时间和文件大小。
谢谢,@Carl。一些很好的建议。然而,我试图做的是设置一些验证的东西,专门围绕Power Query查询本身,即查询最后刷新时,查询检索到多少列,返回多少记录等等,我然后可以与这些项目的期望值进行比较,例如当最近一次刷新日期大于六个月前设置警告标志等。由于最后刷新出现在弹出窗口中,当我将鼠标悬停在右侧“工作簿查询”选项卡中的查询名称上时,我发现必须有一种方法可以访问该数据。 – XLT
@XLT同意,数据必须在工作簿或缓存文件夹中。另一方面,这可能不是记录或支持的元数据。即使你可以找到一些方法来提取最后刷新,可能会在未来破... –
也许我应该离开出血的边缘。除其他事项外,我正在寻求的是[PivotTable.RefreshDate](https://msdn.microsoft.com/en-us/library/office/ff834610.aspx)属性的M版本,但您的观点很好。 – XLT