这些是data model
的各个数据点:
这些是员工的月薪(使用数据模型数据中的数据透视表获得):
然后,每个单元格都将用作在表中运行的查找值。
要在下表的column A
和column B
中查找查找值,如果匹配(在范围内),它将返回column C
下的相应值
我无法使用index and match
在excel的功能枢纽功能中找到任何vlookup
或measures
函数,这些函数用于对报表对象的汇总值进行一些分析,例如作为数据透视表。
我发现LOOKUPVALUE( <result_columnName>, <search_columnName>, <search_value>[, <search_columnName>, <search_value>]…)
是DAX
函数,但是这里的问题是我正在执行范围查找,如下所示,我不知道如果可以将数组作为函数的参数。
传统的calculated fields
也不允许公式中包含数组。
Lookupvalue()
仅适用于单列查询,因为如果找不到匹配项,它将返回一个空单元格,如下所示:
但是当它确实使用下表找到匹配项时:
它将正常工作:
答案 0 :(得分:1)
首先,您需要为薪资创建度量:
Total Pay = SUM(Table1[Pay])
将其作为衡量标准而不是仅将“ Pay”放入数据透视表很重要(这被称为“隐式衡量标准”,被认为是一种不好的做法)。
然后,假设您的薪资范围表名为“薪资范围”。创建另一个度量:
Returned Value =
CALCULATE(
VALUES('Pay Ranges'[Value To Return]),
FILTER( 'Pay Ranges',
[Total Pay] >= 'Pay Ranges'[Lower Bound] &&
[Total Pay] < 'Pay Ranges'[Upper Bound]
))
确保所有这些公式都是“度量”,而不是“计算所得”列。 此外,该公式还取决于范围的正确构造。如果它们重叠,则会出现错误。