excel用数组公式获取一列中非空(非零)值

假如在A1:A10区域中有一列数据,其中包含数值“0”和空的单元格,现在需要将其中非零、非空的数据提取出来,并且按原数据的顺序排列,如图所示,可以使用下面的数组公式。

在B1单元格中输入数组公式:

=OFFSET($A$1,SMALL(IF($A$1:$A$10<>0,ROW($1:$10),""),ROW(A1))-1,0)

公式输入完毕后,按Ctrl+Shift+Enter结束,然后向下填充即可。

公式说明:上例A1:A10区域中,第1、2、4、10行包含非零、非空数据,先用“IF($A$1:$A$10<>0,ROW($1:$10),"")”来产生一个数列“{1;2;"";4;"";"";"";"";"";10}”,然后用SMALL函数来获取非空数值,最后用OFFSET函数返回单元格数据。OFFSET函数也可以用INDEX函数代替,如B1单元格中的数组公式可以写成:

=INDEX($A$1:$A$10,SMALL(IF($A$1:$A$10<>0,ROW($1:$10),""),ROW(A1)))

如果要仅仅获取A列中非空数据,即返回的数据中包括数值“0”,将上述公式中的“$A$1:$A$10<>0”改为“$A$1:$A$10<>""”即可:

=OFFSET($A$1,SMALL(IF($A$1:$A$10<>"",ROW($1:$10),""),ROW(A1))-1,0)

(0)

相关推荐

  • 强大的查找定位函数match的用法

    今天说一个查找定位函数match的用法,它是按特定的顺序搜索特定的项,然后返回该项在此区域或数组中的相对位置,经常与其他查找引用函数结合使用,比如index,vlookup,offset等. -01- ...

  • 奇怪的查找

    excelperfect 有时候,用户组织的数据不便于Excel的操作,让我们不得不费一番周折才能得出想要的结果. 这里是chandoo.org上的一个示例,日期不是放在同一行或同一列中,而是间隔放在 ...

  • 统计不重复数据

    我有手工台账如下: 小本买卖,上面都是便利店的王牌销售产品! 随着种类的不断丰富,我想知道我进货的种类一共有多少! 怎么做? 思路一: 文字描述: 找到每一个品种在整个列表中有几个,如果有N个,则自己 ...

  • 精通Excel数组公式14:使用INDEX函数和OFFSET函数创建动态单元格区域

    excelperfect 动态单元格区域是指当添加或删除源数据时,或者随着包含单元格区域的公式被向下复制时根据某条件更改,可以自动扩展或收缩的单元格区域,可以用于公式.图表.数据透视表和其他位置. 那 ...

  • 按指定次数重复内容的套路合集

    -套路合集- 按指定次数重复内容 1.vlookup精确查找(4参为0) 如下图所示,B列的是要重复的内容,C列是要重复的次数,最后想要的效果是E列那样.A重复2次,B重复3次...... 首先在A列 ...

  • 精通Excel数组公式15:使用INDEX函数和OFFSET函数创建动态单元格区域(续)

    excelperfect 导语:本文为<精通Excel数组公式14:使用INDEX函数和OFFSET函数创建动态单元格区域>的后半部分. 将动态单元格区域公式定义为名称 创建动态单元格区域 ...

  • 【Excel】获取一列中的不重复值,四种方法都有了

    获取不重复值的方法有很多,例如高级筛选法.透视表法.基础操作法和公式法.本例分别向大家介绍这四种方法如何使用. 高级筛选法获取不重复值: 首先,选中A列的数据区域,选择[数据]-[筛选]-[高级]. ...

  • Excel实例:数组公式和函数

    我们在Excel电子表格中描述的工作表公式   返回一个值,该值分配给包含该公式的单元格.Excel还允许您定义一个公式,该公式可以同时将值分配给一系列单元格.这些称为  数组公式. 数组公式 现在, ...

  • Excel公式技巧73:获取一列中长度最大的数据值

    excelperfect 在<Excel公式技巧72:获取一列中单元格内容的最大长度>中,我们使用一个简单的数组公式: =MAX(LEN(B3:B12)) 获取一列中单元格内容最长的文本长 ...

  • Excel公式技巧72:获取一列中单元格内容的最大长度

    excelperfect 一列数据,我们想知道这列中单元格内容最长的文本长度值.通常,可能会在旁边的列中使用LEN函数求得每个单元格文本的长度,然后再使用MAX函数获得最大长度值,如下图1所示. 图1 ...

  • 学习理解Excel数组公式的2种方法

    对于初学者来说,数组公式也是够难理解的了,尤其是那些大型公式,看着头都大了!然而,如果我们能够在学习数组公式时,看到其计算过程,无疑会很有帮助. 方法1:使用F9键,查看数组公式的中间值 例如下图所示 ...

  • Excel小技巧82:利用数组公式来保护行

    excelperfect 这里介绍数组公式的一个另类用法.假设你不想让其他人在工作表某个部分删除或插入行,移动到尽量靠右侧的单元格,在相对应的行中创建一个数组. 例如,不想让他人在工作表的第1至9行范 ...

  • Excel之数字在哪列就获取哪列的标题(Vlookup妙用)

    Excel之数字在哪列就获取哪列的标题(Vlookup妙用)

  • excel数组公式,你会用么?

    你好,我是世杰老师,很高兴在这里和你遇见. 我们经常会在一些excel函数公式两边看到有大括号{},我想大部分同学看到大括号心中就会浮现大大的问号,到底这个大括号有什么作用,今天老师为同学们揭秘大括号 ...

  • Excel数字在哪列就获取哪列标题(Vlookup妙用)

    Excel之数字在哪列就获取哪列的标题(Vlookup妙用)