分享

如何提取Excel字符串里的非汉字部分

 Chosefree 2020-01-09

效果图:

这里可以借用SUBSTITUTE函数对上次推送的方法进一步操作,在单元格中输入公式

=IFERROR(SUBSTITUTE(A1,MIDB(A1,MATCH(0,0/(MIDB(A1,ROW($1:$99),1)=''),0),2*(LENB(A1)-LEN(A1))),''),''),按三键结束即可。

这里再分享一种方法来提取非汉字部分。

第一步:建立名称

点击公式——定义的名称——定义名称,在打开的界面中输入名称比如“提取”,之后在引用位置中输入公式=LEN(MID(提取非汉字部分!$A1,ROW(提取非汉字部分!$1:$30),1))=LENB(MID(提取非汉字部分!$A1,ROW(提取非汉字部分!$1:$30),1)),点击确定。

说明:

提取非汉字部分!:这里表示是工作表名称

MID(提取非汉字部分!$A1,ROW(提取非汉字部分!$1:$30),1):表示从工作表名为“提取非汉字部分”的A1单元格中分别从第1位到第30位开始提取1个字符。

LEN(MID(提取非汉字部分!$A1,ROW(提取非汉字部分!$1:$30),1)):则表示对提取部分的字符进行统计。

LENB():则表示对提取字符按字节来算。

MID语法结构= MID(字符串,开始提取的位置,提取个数)

LEN语法结构= LEN(单元格引用位置),遇到汉字按1个字符来算。

LENB语法结构=LENB(单元格引用位置)遇到汉字则按2个字符来算。

第二步:输入公式

在单元格中输入公式=IFERROR(SUBSTITUTE(A1,MID(A1,MIN(IF(提取,50,ROW($1:$30))),MAX(IF(提取,0,ROW($1:$30)))-MIN(IF(提取,50,ROW($1:$30)))+1),''),''),之后按Ctrl+Shift+Enter组合键结束即可。

说明:

IF(提取,50,ROW($1:$30)):表示之前定义的名称“提取”是TURE则显示50,若是FALSE为则显示对应的行号。

MIN(IF(提取,50,ROW($1:$30))):表示提取最小值,通过该公式可以获取到第一次出现汉字的位置。

MAX(IF(提取,0,ROW($1:$30))):获取最后一个汉字的位置。

MAX(IF(提取,0,ROW($1:$30)))-MIN(IF(提取,50,ROW($1:$30)))+1):获取汉字中的字符。

SUBSTITUTE语法结构=SUBSTITUTE(要替换的文本,旧文本,新文本,[替换第几个]),利用SUBSTITUE函数就可以直接将汉字部分删除。

如果对Excel函数不是很了解的,可以考虑用Word来实现哦。具体的可以参考《Word天,原来查找和替换功能这么强大!》,希望今天的分享对大家有所帮助,若有什么问题,欢迎在下方留言。

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

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多