如何提取数据区域中的正值?
点击上方
蓝色
文字 关注我们吧!
送人玫瑰,手有余香,请将文章分享给更多朋友
动手操作是熟练掌握EXCEL的最快捷途径!
在一些情况下,一个数据区中可能既包含了正值,也包含了负值。或许我们会有这样的需求,即求所有的区域中的正值的总和、平均数、最大数、最小数等等。
这种情况下,该如何操作呢?
其实很简单,如下图。
选中单元格区域C2:C15,输入公式"=IFERROR(INDEX($A$2:$A$15,SMALL(IF($A$2:$A$15>0,ROW(INDIRECT("1:"&ROWS($A$2:$A$15)))),ROW((INDIRECT("1:"&ROWS($A$2:$A$15)))))),"")"并CTRL+SHIFT+ENTER回车即可。
思路:
利用INDIRECT函数构建了一个内存数组。并且这个数组是随数据区域的增长而增长
利用ROW函数返回行数
利用IF函数判断正值并返回对应的行数
利用INDEX函数返回正值
利用IFERROR函数屏蔽错误
其实,这样一个函数是可以精简一些的。请看下面。
这个方法比上面的有所精简,但总的思路是一致的。
在单元格D3中输入"=IFERROR(INDEX($A$2:$A$15,SMALL(IF($A$2:$A$15>0,ROW($A$2:$A$15)-1),ROW()-1)),"")",CTRL+SHIFT+ENTER并向下拖曳即可。
思路和第一个方法是一样的,就不在重复了。
文章推荐理由:
提高效率的好方法。
-END-
长按下方二维码关注EXCEL应用之家
面对EXCEL操作问题时不再迷茫无助
推荐阅读:
戳原文,更有料!免费模板文档!
赞 (0)