引言:本文的练习整理自chandoo.org。多一些练习,想想自己会怎么解决这个问题,看看别人又是怎样解决的,这样能够快速提高Excel公式编写水平。
本次的练习是:在《Excel公式练习:根据条件获取唯一的第n个值》中,编写了一个公式用于显示数据(Data)列中与当前选定查找项目匹配的项目(Item)列的第n个最大的唯一值。然而,如果n是6,而我们只有3个唯一值,那么编写的公式应该返回0。
这里,你的任务是修改这些公式,以便在上面所说的情况下,返回最小的非零唯一值。
示例数据如下图1所示。
图1
其中,将单元格区域A2:A13命名为“i”,将单元格区域B2:B13命名为“d”,将单元格D2命名为“n”,将单元格E2命名为“l”。
单元格D2、E2中的数据可以输入,公式根据其数据返回相应的结果。根据不同的输入数据,公式的结果应该如下图2所示。
图2
规则:
1.公式中不能使用整列引用。
2.不能使用中间公式。
3.不能使用VBA。
4.无论数据放置在工作表中的任何地方,公式都能正常运行。
5.除了规定的名称“i”“d”“n”“l”外,不能有其它硬编码引用。
请写下你的公式。
解决方案
公式1:数组公式。
=MAX(MIN(IF(i=l,d)),LARGE(IFERROR((FREQUENCY((i=l)*d,d)>0)*d,),n))
公式2:数组公式。
=MIN(IFERROR(LARGE(IF(IFERROR((FREQUENCY((i=l)*d,d)>0)*d,)>0,d),ROW(OFFSET(A1,,,n))),FALSE()))
公式3:数组公式。
=MIN(IFERROR(LARGE(IF(FREQUENCY(IF(i=l,d),d),d),ROW(OFFSET(A1,,,n))),""))
……
上面列出的大多数公式都没有进行详细的解析,有兴趣的朋友可以参照前面文章给出的方法逐个研究。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有