Arrays 计算非连续单元格数组中N个最大数的运行总数占连续单元格数组的百分比
我试图在一个非连续的范围内,根据他们的内部排名(从1到10),在一个连续的数组中,以百分比计算运行总数 我已设法使用以下公式分别计算每个“排名”单元的百分比:Arrays 计算非连续单元格数组中N个最大数的运行总数占连续单元格数组的百分比,arrays,excel-formula,cumulative-sum,Arrays,Excel Formula,Cumulative Sum,我试图在一个非连续的范围内,根据他们的内部排名(从1到10),在一个连续的数组中,以百分比计算运行总数 我已设法使用以下公式分别计算每个“排名”单元的百分比: =SUMPRODUCT(--(ABS($Y$25:$Y$110)>=LARGE(ABS($Y$25:$Y$110);AX25));ABS($Y$25:$Y$110))/SUM(ABS($Y$25:$Y$110)) 在哪里 Y列是数据范围 列AX是从1到10的排名-例如,AX25为1,AX34为10 这将能够完成这项工作,但我更
=SUMPRODUCT(--(ABS($Y$25:$Y$110)>=LARGE(ABS($Y$25:$Y$110);AX25));ABS($Y$25:$Y$110))/SUM(ABS($Y$25:$Y$110))
在哪里
- Y列是数据范围
- 列AX是从1到10的排名-例如,
为1,AX25
为10AX34
=SUMPRODUCT(--(ABS($Y$25:$Y$110)>=LARGE(ABS($Y$25:$Y$110);$AX$25:$AX$34));ABS($Y$25:$Y$110))/SUM(ABS($Y$25:$Y$110))
我想在以下数组公式中使用此条件来计算数据范围中特定列中的前10个值:
=IF(INDEX($AH$25:$BL$110;MATCH(LARGE(ABS(OFFSET($AH$25:$AH$110;;S23));$Q$25:$Q$34);ABS(OFFSET($AH$25:$AH$110;;S23));0);S23+1)>0;
INDEX($AH$25:$BL$110;MATCH(LARGE(ABS(OFFSET($AH$25:$AH$110;;S23));$Q$25:$Q$34);ABS(OFFSET($AH$25:$AH$110;;S23));0);S23+1);0)
在哪里
- 列AH:BL是数据范围(仅从第一个公式中的Y列展开)
- 第23行表示到达数据范围内正确列的偏移量
- Q列是从1到10的排名数字
红色字段表明,在给定范围内,N秩的累积值大于总值的80%,因此它们应该为零/“”。有趣的问题,您能详细说明一下如何使用它吗?i、 e.您希望通过数组公式实现什么?是的,我希望N的最大值为10(因此前10),但前提是累积值低于总值的X%。我在考虑如果一个数字比X高,使用百分位数会更好,有什么想法吗?我想我明白你的意思了。出现错误的原因是公式试图在两列中找到匹配的单元格(即Y列中有86个单元格,AX列中只有10个单元格)。如果您只需要累积前10名,那么将AX25替换为10将为您提供该信息。然而,使其在1-10范围内动态需要更多的东西。问题是我已经有了一个连续数组来计算非连续范围内的前10个数字。然而,我希望这个数组在N的累积值超过80%时停止(为零),你能创建一个预期结果的模型,然后我们可以填补空白吗?有趣的问题,你能详细说明一下你需要如何使用它吗?i、 e.您希望通过数组公式实现什么?是的,我希望N的最大值为10(因此前10),但前提是累积值低于总值的X%。我在考虑如果一个数字比X高,使用百分位数会更好,有什么想法吗?我想我明白你的意思了。出现错误的原因是公式试图在两列中找到匹配的单元格(即Y列中有86个单元格,AX列中只有10个单元格)。如果您只需要累积前10名,那么将AX25替换为10将为您提供该信息。然而,使其在1-10范围内动态需要更多的东西。问题是我已经有了一个连续数组来计算非连续范围内的前10个数字。但是,我希望这个数组停止(为零),一旦N的累积值超过80%,您可以创建一个预期结果的模型,然后我们可以填补其中的空白吗?