我有一个图表,按百分位数显示各种医学专业的工资(每行是一个专业,每列是一个百分位数)。
我希望能够获得一个单独的医生和他们的薪水的图表,并自动填写他们每个人的工资的百分比。
https://i.imgur.com/NCtHHAB.jpg
如果所有医生都在一个专业中,那么我可以像这样使用Index-Match:
=INDEX('[Percentiles Chart]'!$B$3:$F$4, 1, MATCH(K3,'[Percentile File]'!$B$4:$F$4,1)) 此公式之所以有效,是因为它仅根据一行中的薪水选择列,并始终返回第一行。如果我想让它在不同的行之间进行选择,我如何才能做到这一点,而不是为每一行编写一个" If“公式呢?换句话说,我希望excel在示例图片中查看A列,选择合适的专业,然后比较各行的薪水,并返回第2行中的内容。
谢谢!
发布于 2019-08-04 17:55:35
正如您正确地提到的,没有简单的方法来完成您正在寻找的东西,因为Index/Offset/Match函数的组合将从匹配的行返回数据,而不是从其他行返回数据。这是一个我尝试过的公式,它的效果完全符合你的要求。它有点老生常谈,使用了SUMPRODUCT,但完成了工作。
在电子表格中,如果您输入以下公式,您将看到它获得了正确的百分位数。
=OFFSET($B$2,0,SUMPRODUCT(($A$3:$A$6=J3)*($B$3:$F$6<K3)),1,1)下面是它的工作原理。第一部分Sumproduct基本上匹配范围A3到A6中的专业名称,如果匹配则返回true。sumproduct中的第二部分检查B3到F6范围内有多少值小于给定值(例如K3)。当这两个结果相乘时,它给出了匹配特性行中小于给定值的值的数量,该值相当于该列在范围中的偏移量。因此,OFFSET函数只是导航到该列并返回百分位数的值。下面的截图应该可以帮助你更好地理解它。
如果我的解释让您感到困惑:),您可能想尝试一下这个公式,看看它到底是如何工作的。
注意percentiles表中显示为100的最后一列。这只是为了在工资大于90%的情况下显示正确的值。

https://stackoverflow.com/questions/57333749
复制相似问题