如何提取数据区域中的正值?

点击上方

蓝色

文字  关注我们吧!

送人玫瑰,手有余香,请将文章分享给更多朋友

动手操作是熟练掌握EXCEL的最快捷途径!

在一些情况下,一个数据区中可能既包含了正值,也包含了负值。或许我们会有这样的需求,即求所有的区域中的正值的总和、平均数、最大数、最小数等等。

这种情况下,该如何操作呢?

01

其实很简单,如下图。

选中单元格区域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函数屏蔽错误

其实,这样一个函数是可以精简一些的。请看下面。

02

这个方法比上面的有所精简,但总的思路是一致的。

在单元格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操作问题时不再迷茫无助

推荐阅读:

如何动态计算数据区域内最大的n个值的和?

你知道如何对含有错误的区域求和吗?

宋公明石碣受天文,VLOOKUP巧排座次表

规范数据录入,你需要知道的几点

你知道怎样定位到最后非空单元格吗?

戳原文,更有料!免费模板文档!

(0)

相关推荐