excel - excel公式中的智能拆分字符串 - 完整的单词
问题描述
如何拆分单词未拆分且结果字符串最多为 30 个字符的字符串?
input cell = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt'
output cell = 'Lorem ipsum dolor sit amet'
我只需要公式,不需要 VBA。
解决方案
尝试这个:
Non- let 函数版本:
=IF(RIGHT(IF(RIGHT(LEFT(A2,31),1)=" ",LEFT(A2,30),LEFT(A2,FIND("@",SUBSTITUTE(LEFT(A2,30)," ","@",(LEN(LEFT(A2,30))-LEN(SUBSTITUTE(LEFT(A2,30)," ","")))))-1)),1)=",",
LEFT(IF(RIGHT(LEFT(A2,31),1)=" ",LEFT(A2,30),LEFT(A2,FIND("@",SUBSTITUTE(LEFT(A2,30)," ","@",(LEN(LEFT(A2,30))-LEN(SUBSTITUTE(LEFT(A2,30)," ","")))))-1)),LEN(IF(RIGHT(LEFT(A2,31),1)=" ",LEFT(A2,30),LEFT(A2,FIND("@",SUBSTITUTE(LEFT(A2,30)," ","@",(LEN(LEFT(A2,30))-LEN(SUBSTITUTE(LEFT(A2,30)," ","")))))-1)))-1),
IF(RIGHT(LEFT(A2,31),1)=" ",LEFT(A2,30),LEFT(A2,FIND("@",SUBSTITUTE(LEFT(A2,30)," ","@",(LEN(LEFT(A2,30))-LEN(SUBSTITUTE(LEFT(A2,30)," ","")))))-1)))
Office 365Let
功能版本:
=LET(a,IF(RIGHT(LEFT(A2,31),1)=" ",LEFT(A2,30),LEFT(A2,FIND("@",SUBSTITUTE(LEFT(A2,30)," ","@",(LEN(LEFT(A2,30))-LEN(SUBSTITUTE(LEFT(A2,30)," ","")))))-1)),IF(RIGHT(a,1)=",",LEFT(a,LEN(a)-1),a))
推荐阅读
- javascript - “this”关键字如何以特定方式工作?
- sql - 数据库系统
- javascript - 改进弹出 jquery 代码以符合市场标准
- css - spring boot + thymeleaf 3+bootStrap,配置bootstrap返回404错误
- elasticsearch - 如何将 Wazuh 服务器与 HELK 集成
- angular - 当子组件处于活动状态时,路由器链接处于活动状态
- c++ - 为什么我的 GTX 1080ti 的表现比 GT 750M 慢?
- python - Django testt:AttributeError:'WSGIRequest'对象没有属性'user'
- npm - 如何防止从父 node_modules 继承包
- hyperledger-fabric - 如何使用私有数据集合动态添加和扩展?