我有一张这样的表
col1 col2
a 1
a 2
a 3
a 4
a 5
b 6
b 7
b 8
b 9
b 10
我想为col1中的每个组编写一个PERCENTILE函数。有没有办法透过这个表并编写自定义函数PERCENTILE。但是数据透视表中的计算字段不允许编写函数。我必须在没有VBA的情况下这样做
我必须写,找到前70%的平均值,如下所示。但是如何获得子范围?
col1 col2
a =AVERAGEIF(B1:B5,">"&Percentile(B1:B5,0.7))
b =AVERAGEIF(B6:B10,">"&Percentile(B6:B10,0.7))
答案 0 :(得分:1)
您可以使用数组公式来实现,因为百分位函数接受数组:
=PERCENTILE(IF($A$2:$A$11=D2,$B$2:$B$11,""),0.7)
这需要使用ctrl + shift + enter作为数组公式输入。
{=PERCENTILE(IF($A$2:$A$11=D2,$B$2:$B$11,""),0.7)}
只需在列中自动填充。如果您需要一个如何复制粘贴列的唯一值的示例,请与我们联系。
如果您愿意,可以像这样测试。它有效:
=PERCENTILE(B7:B11,0.7)
祝你好运。