首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Mid+Find 再见 !Text才是Excel文本函数yyds

在字符截取时,我们最常用的是MID+Find组合,Find查找分隔符位置,MID负责截取,但如果你学会text函数,你就知道前者是多么的low。看一个常见的例子:

【例】如下图所示,A列为个人信息,需要用公式把姓名、年龄、学历和籍贯提取出来

C3公式:=TEXT(1,B3)

D3公式:=TEXT(-1,Substitute(B3,"0","!0"))

E3公式:=TEXT(0,B3)

F3公式:=TEXT("A",B3)

可能大部分同学都不理解公式的含义,为什么用数字就可以拆分字符串。这和text的第二个参数有关。

text的第二个参数是一串代码,和单元格自定义格式类似,它可以给第一个参数值设置数值格式。而根据数值的类型,分为四个位置:

正数;负数;零;文本

当第一个参数为正,text就会返回第一个正数位的内容,为负返第二个位置内容,为0返第三个,文本则返回第4个。

反之,如果单元格中是用分号分隔的文本,我们就可以用不同格式的符号返回对应位置的值。如下图所示-1就可以提取出第2个值。

=TEXT(-1,B11)

那如果不是分号怎么办?用substitute函数替换

=TEXT(-1,SUBSTITUTE(B11,",",";"))

还有一个问题,如果含有0,结果就会出错。原因是0是自定义格式的强制占位置,并不是数值0。

可以把替换为!0 就能解决这个问题。

=TEXT(-1,SUBSTITUTE(B3,"0","!0"))

因为单元格格式只有四个位置,你是不是以为只有截取有4段内容的字符?嘿嘿,太年轻了。它可以截任意多个位置。来,截取第5个。技巧是把被提取的字段两边替换成” ;“,再用-1提取第2段即可。

兰色说:在最新office365版本中,新增了3个实力超强的文本拆分函数textsplit、textbefore和textafter。但用新版本的人很少,另外它们只限于文本的拆分,综合实力上还是比text差的多。

  • 发表于:
  • 原文链接https://page.om.qq.com/page/O4z8ruL74f0Ir_i9tpZpEV3Q0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券