楼主 gouweicao78 |
【声明】请尊重原创版权!未经允许,不得转载! 数据按固定分割符号“分列”是一项常用的基础应用功能之一,通过函数公式的也能解决,一般看数据情况而定,比如简单的“2列”数据像"数据1,姓名2",一般的LEFT或MID、REPLACE等与FIND配合即可解决,但是有的数据比较多“列”的比如"1,2,zhangsan,北京,Exceltip"等,如图: 一次次FIND恐怕就很累人了,于是就有了一个TRIM+MID+SUBSTITUTE+REPT的【必杀技】公式:
1、挑拨离间:利用SUBSTITUTE+REPT组合,将分隔符——逗号替换成固定长度的空格,将各“列”数据距离拉大,结果如下: 2、各个击破:MID函数取出含有空格的各“列”的值 第1段从第50*1-49即第1个字符起,取50个字:{"1 "}——"1+49个空格" 第2段从第50*2-49即第51个字符起,取50个字:{" 2 "}——"+1个空格2+48个空格" 第3段从……即第101个字符起,取50个字:{" zhangsan "}——"+2个空格zhangsan+40个空格" 以此类推,得到每一列数据和“空格”的组合文本。 3、去伪存真:这些空格都不是我们要的,利用TRIM函数特性,即可将它们去除。 【疑问】这REPT的50个空格是怎么定的?换做其它数行吗? 还是这个例子"1,2,zhangsan,北京,Exceltip"——共有24个字符,最长的一“列”是zhangsan和Exceltip,都8个字的。 我们来测试一下: 1、是否空格数只要比最长“列”多就可以?我们用9来代替,测试公式: =TRIM(MID(SUBSTITUTE($A3,",",REPT(" ",9)),9*COLUMN(A:A)-8,9)) 得到结果:
免责声明 有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素,
经与ExcelTip.Net站长Apolloh商议并征得其同意,
现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示,
供有需要的人士查询使用,也慰缅曾经的论坛时代。
所示各个帖子的原作者如对版权有异议,
可与本人沟通提出,或于本站点留言,我们会尽快处理。
在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
猜您喜欢
评论列表
搜索
|