专栏名称: PowerBI星球
海量干货,帮你轻松上手 Power BI
目录
相关文章推荐
正午故事  ·  被“电诈”PUA的高学历者们 ·  昨天  
三联生活周刊  ·  福建没有的“福建面”,成了这座城的顶流小店? ·  2 天前  
新周刊  ·  为什么成年后,毛绒玩具更重要了 ·  3 天前  
三联生活周刊  ·  给企业大佬写演讲稿的我,对“预制金句”过敏了 ·  3 天前  
51好读  ›  专栏  ›  PowerBI星球

Excel的PowerPivot如何创建“计算表”?

PowerBI星球  · 公众号  ·  · 2024-07-18 11:34

正文

在PowerBI中有四个地方会用到DAX:度量值、计算列、计算表,以及 行级安全性编辑器 ,这些之前我们都介绍过。
其中用DAX建计算表,在建模阶段会经常用到,在数据视图或者模型视图下,点击“新建表”即可开始建计算表。

之前介绍的建立维度表/辅助表都可以通过它来实现:

Power BI建立维度表常用的几种方式

Power BI 辅助表制作方式汇总


在Excel的PowerPivot中,也用的是DAX函数,我们经常用它来建立度量值和计算列,但是在PowerPivot界面功能区中,并没有“新建表”这个按钮,是不是不能用DAX建立计算表呢?
其实PowerPivot也是可以的,只是这个功能隐藏的有点深。
下面以这个简易的表格为例,来看一下如何在PP中创建计算表。
这是个简易的销售明细表,先把它添加到PP的数据模型中,假如我们想通过这个表提取某些字段作为产品维度表或者业务员维度表,可以按以下步骤来操作。

在Excel界面【数据】选项卡中,点击“现有连接”。

在弹出的对话框中,切换到“表格”,在里面可以看到已经导入到PP模型中的表,这里我们只有一个表,就直接选中这个表打开 (如果模型中有多个表,最好选择一个数据量最小的表)。

然后选择该数据的保存起始位置,这里是在空白的sheet中操作的,可以直接保存到现有工作表的A1单元格。
点击确定,这个销售明细表就全部显示出来了:

这个功能其实是将PP模型中的表上载到Excel表格,不用建立数据透视表就能直接查看模型中的数据。
不过这里我们想要查看的并不是这个销售明细表,而是想利用DAX从这个表中提取不重复的产品名称作为产品维度表,让我们接着操作。
鼠标放到上图的表格上右键,选择表格>编辑DAX:

这就是“新建表”的入口

然后就可以看到DAX编辑窗口,命令类型选择“DAX”,下面的表达式窗口就相当于PowerBI中的DAX编辑器,可以根据需要来写DAX公式了。
提取不重复的产品名称,可以这样写:
EVALUATE
VALUES( '销售明细'[产品名称] )


注意与PowerBI新建表不同的是,必须以EVALUATE开头,用来执行DAX语句,和我们之前介绍的 DAX Studio DAX查询视图 中的用法是一样的,都需要先写EVALUATE。
后面的DAX表达式就和PowerBI中完全一样了,点击确定,在之前销售明细表的位置上就会出现新的DAX语句的执行结果:

如果想提取销售部门和业务员两列作为业务员维度表,就把DAX表达式改成下面的写法:

EVALUATE

SUMMARIZE( '销售明细' , '销售明细'[销售部门] , '销售明细'[业务员] )

DAX中的表函数都可以在这里使用,通过它创建的计算表,还可以加载到数据模型中使用,这种方式也就是传说中的“链接回表”了。






请到「今天看啥」查看全文