4 个比 OFFSET 更好用的 Excel 提取函数

锵锵~ 大家好哇!我是又在研究函数的卫星酱~

最近,卫某被 Excel 提取问题烦到了!

因为,要想在表格中提取出需要的内容,实在是太复杂了……

提取函数 MID、LEFT 等,只能提取指定个字符,每次使用还要先数一下提取对象的字符数

要是数据差异过大,这效率还不如手打(说好的用 Excel 避免无效加班呢?!)。

不想挨个数数,就得加上 FIND、SEARCH、OFFSET 等定位函数,可对于函数小白来讲就……

1、文本处理新选择:TEXTAFTER & TEXTBEFORE

提取表格编号中的数字:

旧方法:

使用 FIND 或 SEARCH 找到空格的位置,然后用 MID 提取数字。

=MID(D3,FIND(" "D3)+1,LEN(D3)-FIND(" "D3))

这个公式会找到 D3 单元格中第一个空格的位置,然后提取空格后的所有字符。

有些复杂哈?

但是使用 TEXTAFTER 提取,事情就简单多了。

新方法:

用 TEXTAFTER 函数,「text」文本 +「after」之后,非常好记~

=TEXTAFTER(D3," ")

这个公式会返回 B1 单元格中空格后的所有文本,即编号。

顺带也介绍一下 TEXTBEFORE 函数,「text」文本 +「before」之前,就是提取指定文本之前的内容了~

=TEXTBEFORE(D3," ")

新函数简化了公式,减少了辅助函数的使用,让数据处理门槛更低了呢!

同时,它也比需要好几个步骤才能完成的【分列】功能要更为迅捷灵活哦。

TEXTBEFORE 允许用户指定任意的分隔符,而不仅仅是逗号、分号等固定分隔符;

也可以嵌套在其他公式中使用,而不是像【分列】一样作为单独的步骤存在。

像本例中的情况,如果在源数据表中使用分列,就会造成这样的错误 ↓↓↓

还是用 TEXTAFTER 和 TEXTBEFORE 函数吧,既不会破坏源数据,又能自由选择结果存放区域

2、行列操作更灵活:TAKE & DROP

还是上面的示例表格,想要删除第一列(序号),并保留后面三列的数据。

 

旧方法:

没有直接的函数可以很容易地删除一整列,但我们可以提取剩下的部分,反向删除指定列~

=OFFSET(B2,0,1,4,3)

定位到 B2 单元格向上偏移 0 行,向右偏移 1 列;高度为 4 行,宽度为 3 列的单元格区域。

搞不清楚位移的小伙伴们要被绕晕了!还是看看新方法 ↓↓↓

新方法:

DROP 函数,「drop」,使落下,丢弃 —— 用于删除指定行列

删除第一列:

=DROP(B2:E5,0,1)

这个公式会删除指定范围的前 0 行和前 1 列,并输出表格剩下的部分。

还有一个提取函数 TAKE,「take」,拿走,也很容易记忆,它能直接提取所需行列。

比如本案例中我们可以选择,提取表格的前 4 行和后 3 列:

=TAKE(B2:E5,4,-3)

这两个新函数,能直接对行列进行操作,不需要我们再计算偏移量,这样一来,公式的编写就更加直观和简便了!

至于实际运用中,到底要选择哪个函数,取决于数据的特征

比如,我们需要删除 UNIQUE 函数结果中的 0 值;

=UNIQUE(C:C)

在不知道去重的结果有多少行时,嵌套一个 DROP 函数删除第一行,显然比用 TAKE 函数要来得容易。

=DROP(UNIQUE(C:C)1)

同样的,如果我只是想提取表格的第一行,用 TAKE 函数:

=TAKE(B2:D21,1)

岂不是比费劲地数出,除掉第一行剩下还有几行,然后用 DROP 函数,要容易的多吗?

=DROP(B2:D21-19)

3、写在最后

好了,今天一口气介绍了 4 个 Excel 新函数哦~

它们都是能让我们更容易地提取文本或行列的好帮手:

❶ TEXTBEFORE

❷ TEXTAFTER

❸ TAKE

❹ DROP

这些好记又好用的新函数,你学会了吗?

本文来自微信公众号:秋叶 Excel (ID:excel100),作者:卫星酱

广告声明:文内含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更多信息,节省甄选时间,结果仅供参考,IT之家所有文章均包含本声明。

文章价值:
人打分
有价值还可以无价值
置顶评论
    热门评论
      文章发布时间太久,仅显示热门评论
      全部评论
      一大波评论正在路上
        取消发送
        软媒旗下人气应用

        如点击保存海报无效,请长按图片进行保存分享