LOOKUPVALUE 函数的使用姿势

工坊的小伙伴们大家好,在实际工作中,特别是Excel中,经常需要使用VLOOKUP函数根据索引来查找出一些其他的列。

那么,在Power BI中,类似的函数是什么呢?

它就是我们今天的主角 ☛ LOOKUPVALUE函数。

首先来看一下该函数的参数:

LOOKUPVALUE( <结果列>, <查找列>, <索引值>[, <查找列1>, <索引值1>]…)

其中↓↓
结果列是要最终查找出来的值所在的列;
索引值为查找依据的值或列(可以为表达式);
查找列为需要进行按照索引值进行查找的列(不能是表达式)。


01 数据准备

我们通过一个例子来理解一下该函数的几个参数:

销售记录表,每个销售代表的销售记录均存储在该表中☟☟

file

人员维度表,存储的是销售代表的ID和姓名☟☟

file


02 LOOKUPVALUE在度量值中的用法

如果要查询销售代表ID 为205的销售代表的姓名,那么可以写这样一个度量值↓↓

销售代表姓名205 =
LOOKUPVALUE ( '人员维度'[销售代表姓名], '人员维度'[销售代表ID], 205 )

各参数的含义是:结果是销售代表的姓名,要查找销售代表ID列,根据的是销售代表ID = 205,报表视图中查看结果如下:

file

以下的表达式生成ID最大的销售代表ID对应的销售代表名称:

销售代表姓名MAXID =
LOOKUPVALUE ( '人员维度'[销售代表姓名], '人员维度'[销售代表ID], MAX ( '人员维度'[销售代表ID] ) )

此时第三个参数换为了DAX表达式,返回最大的ID,进而查询出该ID对应的销售代表姓名。


03 LOOKUPVALUE函数生成计算列

除用于生成度量值外,LOOKUPVALUE函数还可以用于生成计算列,如以上数据销售记录表中无销售代表姓名,使用如下表达式可查询出每一行数据对应的销售代表姓名:

销售代表姓名 =
LOOKUPVALUE ( '人员维度'[销售代表姓名], '人员维度'[销售代表ID], '销售记录'[销售代表ID] )

其中该表达式的含义是根据销售记录表中每一行的销售代表ID,从人员维度表中查询出对应的销售代表名称。

返回的结果如下:

file

今天的分享就到这儿了,如果有什么疑问或者更好的解决方法,欢迎踊跃留言鸭!
谢谢大家!
file



* PowerPivot工坊原创文章,转载请注明出处!


如果您想深入学习微软Power BI,欢迎登录网易云课堂试听学习我们的“从Excel到Power BI数据分析可视化”系列课程。点击左下角“阅读原文”可直达云课堂。或者关注我们的公众号(PowerPivot工坊)后猛戳”在线学习”。


file


长按下方二维码关注“Power Pivot工坊”获取更多微软Power BI、PowerPivot相关文章、资讯,欢迎小伙伴儿们转发分享~


Power Pivot工坊