分享

实现Excel数据自由 - 彻底打通Excel,Power Query,Piower Pivot,和PBI之间连接。

 ExcelEasy 2023-08-03 发布于北京


微软提供了非常好数据处理平台:Excel,经过多年的发展,现在又加上了Power Query, Power Pivot,再加上Power BI,可以说是已经覆盖了从数据的整理到各种数据分析场景的全覆盖。

我们一般的使用路径是:

  1. 用Power Query整合和清洗数据,然后导入到Excel中,在Excel中进行数据处理和分析,得到想要的报表。或者直接导入到Power Pivot数据模型中(下面的第2步)。

  2. 在数据模型中创建度量值,然后使用Power Pivot在Excel中形成报表。或者使用CUBE类函数制作复杂的自定义报表。

  3. 上述的1和2可以在Power BI Desktop中实现,然后可以在Excel中连接Power BI Desktop数据集,使用超级透视表和CUBE类函数制作自定义报表。

在上面的路径中,数据之间的流向如下图所示:

其中,路径1是双向的,既可以将Excel数据导入PQ处理,也可以将PQ数据加载到Excel中。

路径2是单向的,只能将Excel表格添加到数据模型,而不能反过来。从数据模型到Excel的数据流是通过超级透视表和CUBE类函数实现的。

路径3是单向的,数据从PQ中处理完成后直接加载到数据模型中。

现实需求是复杂的

但是现实需求是复杂的。我们需要将上图中所有的连接都变成双向的。即除了传统路径之外,还需要:

  • 不用透视表和CUBE类函数,直接从Excel数据模型中返回经过DAX函数计算的结果到Excel中。

  • 不用透视表和CUBE类函数,直接从Power BI Desktop数据模型中返回经过DAX函数计算的结果到Excel中。

  • 在Power Query中直接访问和转换数据模型中的数据。

为什么要这么做呢?

主要是因为Excel的函数,Power Query的M语言,数据模型中的DAX计算引擎这三者都非常强大,但是它们各自有自己的专长。

而对于大部分普通用户来说,缺少专业的IT工具,我们处理数据的核心平台是Excel。这就意味着:

  • 我们需要在Excel的界面中处理数据。

  • 我们需要在Excel的界面中呈现数据。

但是有些计算需要使用DAX的专长,又不想从数据透视表或者CUBE函数中得到数据,因为我们需要的可能是一张较大的明细表。

还有些计算需要使用Power Query的专长,但是其中的某些计算又要用到数据模型中的某些特性。

所以,如果我们能在一个Excel的界面中直接使用这些功能,那就太好了。

这就意味着,我们需要摆脱超级透视表和CUBE函数。在Excel的界面中和Power Query中直接使用DAX公式。

这将对这二者,尤其是Excel的计算能力带来非常强大的提升,让你真正实现Excel数据自由。

具体安排 

后续我们将安排连续4~5篇公众号文章和相应的视频(发在视频号)中,详细介绍如何实现这样的互联互通。

敬请期待。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多