分享

批量提取字符,除了用Ctrl E外,还有这2个方法可选

 hercules028 2022-05-06 发布于四川

图片

在字符串职工提取需要的字符或部分字符串,也是Excel数据和处理的一部分,大家用到最多的应该是快速填充快捷键Ctrl+E,但同时,使用Ctrl+E提取数据也很容易出错,例如:

图片

从示例中可以看出,目的是提取门店的编号,但无论在目标单元格中输入1个值,还是2个值,都得不到正确的结果,但快速填充快捷键Ctrl+E的用法是完全正确,没有错误的……究其原因,就是Excel系统无法理解此时的逻辑关系。

要解决此问题,是提取字先得更加的专业和灵活,就离不开Find+Mid函数的组合。


一、Mid函数。

功能:从文本字符串中指定的起始位置提取指定长度的字符。

语法结构:=Mid(字符串,开始位置,字符长度)。

目的:提取员工姓名的“姓”。

图片

方法:

在目标单元格中输入公式:=MID(B3,1,1)

解读:

公式中的第二个参数“1”为从第1位开始,第三个参数“1”为需要提取的文本长度为1。


二、Find函数。

功能:返回一个字符串在另一个字符串中的起始位置(区分大小写)。

语法结构:=Find(查找字符串,源字符串,[查找索引]);当省略第三个参数“查找索引”时,默认从第1个开始。

目的:返回“-”在“所属门店”中的起始位置。

图片

方法:

在目标单元格中输入公式:=FIND('-',H3)。


三、Find+Mid组合。

目的:提取“所属门店”字符串中的编号。

思路:如果输入前2个目标单元格的值,之后用Ctrl+E提取,得不到符号“-”后的数字;所以,首先要判断符号“-”后有无数字,最简单的方法就是提取符号“-”后的值,然后+1,如果返回错误值,则符号“-”后为文本,否则符号“-”后有数字,需要提取。此处,需要多重判断,所以需要借助If和Iferror函数。

图片

方法:

在目标单元格中输入公式:=IFERROR(IF(SUM(MID(H3,FIND('-',H3)+1,1),1),MID(H3,1,FIND('-',H3)+1),#VALUE!),MID(H3,1,FIND('-',H3)-1))。

解读:

如果符号“-”后面有数字,则返回从第1个位置开始到“-”后面的值,否则返回错误值#VALUE!,并作为Iferror函数的参数,当Iferror的第一个值有误时,则返回指定的值,即返回MID(H3,1,FIND('-',H3)-1),也就是符号“-”之前的字符。


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多