[英]Excel 2016 Power Query - Get data from Oracle data dictionary
[英]Querying single data points from the Excel Data Model / Power Query (Get & Transform Data)
我正在使用Excel 2016的最新版本(通过O365 E3许可证),并使用Power Query / Get&Transform Data。 我可以成功创建查询并将其加载到页面。 我还成功创建了Power Pivot报告。
我想从通过Power Query加载的数据中查询单个数据点。 例如,假设一个名为DivisionalRevenue的数据集具有:
Date Division Revenue
2016-01-01 Alpha 1000
2016-01-02 Alpha 1500
2016-01-01 Beta 2000
2016-01-02 Beta 400
我可以轻松地将其加载到Excel工作簿中,或将其包含在数据模型中并创建强大的功能。 但是,Power Pivot并不总是满足我的要求,尤其是在页面上如何显示数据方面。 为了实现我的目标,我可能希望能够查询单个数据点。
我想在页面上有一个带有公式的单元格,我可以用它查询单个数据点。 如果它在数据透视表中,则可以使用类似以下内容的方法:
=GETPIVOTDATA("Revenue",$A$3,"Date",DATE(2016,1,1),"Division","Alpha")
查找值(日期和除法)可以从页面上的单元格中检索出来,也可以硬编码到公式中。 这是我正在处理的多个报告的要求。
或者,我可以添加合并了日期和分区的组合查找列,并使用vlookup拉取类似的值:
=VLOOKUP("42371Alpha",I9:L13,4,FALSE)
最后,我可以结合使用INDEX和MATCH来识别正确的行号,然后提取数据。
所有这些解决方案都需要将数据加载到工作表上。 一个需要枢轴表,必须对其进行刷新才能正常工作。 另外两个需要创建任意查找列,以便您可以基于多个字段(在此示例中为日期和除法)匹配一行,并且必须确保查找字段的公式正确地沿数据表的长度扩展。 在这两种情况下,当有人与同事共享此工作簿时,如果有人影响数据透视表或查找的相当脆弱的设置,我都会担心。
因此,我真正想要找到的东西等同于对数据集进行数据透视表查询。
** This doesn't exist, but I would like to know if something like it does **
=GETQUERYDATA("Revenue","DivisionalRevenue","Date",DATE(2016,1,1),"Division","Alpha")
这样的事情存在吗? 这样的事可以做吗? 我可以从通过Power Query / Get&Transform Data创建的数据集中检索任意数据点吗?
Excel中有一项功能,可让您从PowerPivot模型中查询,但是由于某些原因,它并没有被高度宣传。
将数据保存在PowerPivot模型中后,转到Excel->“数据”选项卡->现有连接->“表”选项卡
从那里选择您要开始使用的表。 一旦该表格的数据在您的Excel工作表中,您实际上就可以右键单击该表格->转到“表格”->“编辑DAX”
从那里,您可以输入以下DAX功能,例如
EVALUATE
FILTER(SampleData,[Date]=DATE(2016,1,1) && SampleData[Division]="Alpha")
确保在下拉菜单中选择Command Type = DAX。 这是在我的屏幕上的样子:
为了进一步提高查询能力,您可以为Excel安装可选的“ DAX Studio”插件,该插件允许您编写自定义DAX查询,然后将结果直接导出回Excel工作表。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.