获取非空单元格

本次的练习是:尝试使用一个公式,来消除指定单元格区域中的空单元格,即获得的值中不包括空单元格,如下图所示。

先不看下面的内容,自已试试!


公式思路

先找到非空单元格所在行的行号,获取行号并以行号作为INDEX函数的参数取出相应的值。

公式

选择单元格C1:C7,输入公式:

=IFERROR(INDEX(A1:A7,SMALL(IF(A1:A7<>"",ROW(A1:A7)),ROW(A1:A7))),"")

按Ctrl+Shift+Enter组合键完成输入。

公式解析

下面,我们将公式分解,来看看是怎么一步一步得到答案的。

首先,找出非空单元格所在行的行号。选择单元格C1:C7,输入公式:

=IF(A1:A7<>"",ROW(A1:A7))

按Ctrl+Shift+Enter组合键完成输入。结果如下图所示:

从图中可以看出,公式将列A中的值与空值比较,不为空则在列C中相应的单元格输入非空单元格行号,而空单元格则输入FALSE。

接下来,获取已经找出的非空单元格的行号。选择单元格E1:E7,输入公式:

=SMALL(C1:C7,ROW(A1:A7))

按Ctrl+Shift+Enter组合键完成输入。结果如下图所示:

代表非空单元格行号的数值已依次输入到列E单元格中。ROW函数得到一个数组{1;2;3;4;5;6;7},作为SMALL函数的参数,依次取出C1:C7中第1至第7小的值。

然后,将行号作为INDEX函数的参数取出值。选择单元格G1:G7,输入公式:

=INDEX(A1:A7,E1:E7)

按Ctrl+Shift+Enter组合键完成输入。结果如下图所示:

可以看到,在列G中放置了非空单元格的值,但也放置了错误值。INDEX函数依次取出列A中第1、3、5、7行的数据。

最后,使用IFERROR函数消除错误值。选择单元格I1:I7,输入公式:

=IFERROR(G1:G7,"")

按Ctrl+Shift+Enter组合键完成输入。结果如下图所示:

如果是错误值,则为空。

将上述各步的公式组合,即可得到最终的公式。

(0)

相关推荐

  • 用函数实现筛选的功能,HLOOKUP也来凑热闹

    这几天一直说怎么用函数实现筛选的功能,也可以说是一对多的查询问题.我把最近我能想到的方法都来说一下,今天就说下用hlookup函数来实现这个功能. -01- 具体应用 1.根据姓名查询出所有的记录 还 ...

  • 一对多查询又一个新套路

    -01- 具体应用 1.查找出省份所对应的所有城市 如下图所示,有几个不同的省份,每个省份又对应多个不同的城市.比如现在要把福建省对应的所有城市查询出来,结果就是D列所示.在D2单元格输入公式=IFE ...

  • 二维表中按条件提取产品清单

    点击上方 蓝色 文字  关注我们吧! 送人玫瑰,手有余香,请将文章分享给更多朋友 动手操作是熟练掌握EXCEL的最快捷途径! 在实际的经济生活中,我们经常会遇到给客户报价的情形.一份设计合理的报价单通 ...

  • 学习和创新永无止境!一对多查询,各位大神的套路都在这里了。

    你好,我是刘卓.欢迎来到我的公号,excel函数解析.在工作和学习中,我们经常需要根据一个条件,来查询出满足该条件的所有值,俗称一对多查询. 关于一对多查询的方法,我相信有些小伙伴已经非常熟悉了,可能 ...

  • Excel公式练习82:提取最近出现的相同数据旁边的单元格内容

    excelperfect 本次的练习是:如下图1所示,有两列数据,要求在列B中输入数据后,自动匹配其上方最近一次出现的该数据并提取对应的列A中的数据放置到列C对应的单元格中,例如,单元格B6中输入1后 ...

  • 最受欢迎的筛选公式,你一定要学会!

    今天继续来说筛选公式,不过今天的筛选公式是比较受欢迎的,大众普遍在用的,值得你学会. -01- 具体应用 1.根据姓名查询出所有的记录 如下图所示,只要选择一个姓名就把对应的所有记录查询出来.前几天已 ...

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

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

  • 查找不重复记录的几个套路(删除重复项)

    今天和小伙伴们分享几个查找不重复记录的套路,这个不重复的记录相当于用删除重复项这个功能,比如表中有2个相同的名字,只取第一次出现的记录.也就是如果一条记录重复出现多次,只取第一次出现的记录. -01- ...

  • 985大学生面试想拿8k,老板说:连这个提取不重复值的方法都不会,只值3k!

    每天一点小技能 职场打怪不得怂 编按:如何提取不重复值并统计数量?这是EXCELER在工作中普遍会遇到的问题.今天,小E给大家带来的就是从三个角度,用三种完全不同的方式去处理这类问题的方法.不管你是E ...

  • 获取每行中第一个非空单元格

    本文系因违规而删除的2017年10月22日推送文章经修改后重新推送,已看过的朋友可直接飘过,免得浪费时间. 本次的练习是:如何使用公式获取每行中第一个非空单元格?例如下图1所示工作表,要求使用公式根据 ...

  • 怎样提取最后一列非空单元格内容?

    如图1,有多列数据,怎样提取最后一列非空单元格内容,比如,第2行最后一列非空单元格是B2,就把B2的内容提取出来,第5行最后一列非空单元格是A5,当行数很多的时候,一个个手工提取就非常慢,怎样快速提取 ...

  • 3.6 counta统计非空单元格的个数

    3.6 counta统计非空单元格的个数

  • 非空单元格计数函数counta的用法

    今天解说一下counta这个函数,它的作用是计算区域中非空单元格的个数.它可以计算包含任何类型的信息的单元格,比如错误值和空文本 ("").但它不会对空单元格进行计数. -01- ...

  • 如何用Excel公式提取非空单元格的数值?这里有最简单的方法

    昨天有个小伙伴私信我,如何用公式从某个数据区域中获取非空单元格的数值.他的问题大致是这样子的:下图中A1:A10是数据区域,从这个数据区域中用公式拿到非空单元格的数据,也就是C1:C7单元格区域显示的 ...

  • 如何用公式返回第一个(最后一个)非空单元格的值,建议收藏备用

    最近推送的几篇文章: QuickLook:不用打开文件,也能轻松预览文件内容 十款漂亮的字体下载,可免费商用,做PPT必备 [管理会计]如何用Excel建立预测模型,进行财务预测 [技巧]Excel中 ...

  • excel如何忽略非空单元格批量输入数据

    在excel中我们有时候需要忽略非空单元格对空白单元格批量输入数据,那么该如何操作呢? 打开一个"人事档案表",含有"姓名"和"性别",我们 ...

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

    点击上方 蓝色 文字  关注我们吧! 送人玫瑰,手有余香,请将文章分享给更多朋友 动手操作是熟练掌握EXCEL的最快捷途径! 在Excel的世界里,很多时候需要查找一行或者一列中最后一个单元格的位置或 ...

  • EXCEL小技巧:如何统计非空单元格

    首先我们来介绍几个统计函数: 1.COUNT(value1,value2,...)    统计包含数字的单元格个数 2.COUNTA(value1,value2,...)    统计非空单元格的个数 ...