在Excel中如何筛选出不规则的数据?

办公教程导读

收集整理了【在Excel中如何筛选出不规则的数据?】办公软件教程,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1245字,纯文字阅读大概需要2分钟

办公教程内容图文

Windows使用教程,Windows系统教程,Windows优化教程

图1

A:下面介绍如何使用数组公式来实现目的。为便于理解,我们先使用一些中间结果,然后组合成最终的数组公式。

我们的思路是,首先将数据分解成单个的字符,然后找出字符在数据中首次出现的位置,接着取自字符首次出现到数据末尾的部分,看看是否还会出现数字,如果再次出现数字,则表明数据不符合要求,否则获取原数据,即原数据满足要求。

以单元格B2中的数据“558fjk”为例。

单元格C2中的数组公式:

=MID(B2,ROW(INDIRECT(“1:”& LEN(B2))),1)

得到数组{”5”,”5”,”8”,”f”,”j”,”k”}

在单元格D2中,使用1来乘以单元格C3中的公式得到的数组:

=1*MID(B2,ROW(INDIRECT(“1:”& LEN(B2))),1)

得到数组{5,5,8,#VALUE!,#VALUE!,#VALUE}

单元格E2中,将数组传递给ISERROR函数:

=ISERROR(1*MID(B2,ROW(INDIRECT(“1:”& LEN(B2))),1))

得到数组{FALSE,FALSE,FALSE,TRUE,TRUE,TRUE}

单元格F2中,使用数组公式:

=MATCH(TRUE,ISERROR(1*MID(B2,ROW(INDIRECT(“1:”& LEN(B2))),1)),0)

得到数据中第1个非数字字符出现的位置,本例中为4。

单元格G2中,数组公式:

=MID(B2,MATCH(TRUE,ISERROR(1*MID(B2,ROW(INDIRECT(“1:”& LEN(B2))),1)),0),LEN(B2))

获取自第1个非数字字符开始至数据结尾的部分,本例中为fjk。

单元格H2中,使用数组公式:

=MATCH(FALSE,ISERROR(1*MID(G2,ROW(INDIRECT(“1:”& LEN(B2))),1)),0)

判断单元格G2中的数据是否还有数字,如果有返回数字的位置值,否则返回#N/A错误值。

单元格I2中,公式:

=IF(ISNA(H2),B2,””)

判断单元格H2中是否是#N/A值,如果是,表明单元格B2中的数据满足条件,返回单元格B2中的数据;否则不满足条件,返回空。这样,就得到了最终的结果。

将上述步骤中使用的公式组合起来,得到一次获取满足条件的数据的数组公式:

=IF(ISNA(MATCH(FALSE,ISERROR(1*MID(MID(B2,MATCH(TRUE,ISERROR(1*MID(B2,ROW(INDIRECT(“1:”& LEN(B2))),1)),0),LEN(B2)),ROW(INDIRECT(“1:” &LEN(B2))),1)),0)),B2,””)

将公式下拉,即可得到相应的满足条件的数据,如上图1所示。

办公教程总结

以上是为您收集整理的【在Excel中如何筛选出不规则的数据?】办公软件教程的全部内容,希望文章能够帮你了解办公软件教程在Excel中如何筛选出不规则的数据?
如果觉得办公软件教程内容还不错,欢迎将网站推荐给好友。

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » 在Excel中如何筛选出不规则的数据?