其实,我是真不想弄这个,因为,百度上教程真心不少,后面想了想,还是复制一次,理由就是:这种思路很优秀,在不知道所需字段长度的情况下,先增加字段长度,然后将长字段,每隔99个看成一组。第一次看到这种思路的时候,惊为天人,所以,就抄袭一下。
直接看案例:
有一些项目号是按一定的意义排成的,现在需要将这些项目号按“-”进行拆分
理论上,我们可以通过——数据-分列-分隔符号-下一步-其他,输入“-”,然后点击完成,就能按要求进行区分了
但是这里,要介绍另外一种比较烧脑的做法
在单元格C1输入公式:=TRIM(MID(SUBSTITUTE($B2,"-",REPT(" ",99)),COLUMN(A2)*99-98,99))
然后向右拖动,向下拖动,完成全部提取
关于这个公式,逐步拆开来看:
1、REPT(text, number_times),REPT(" ",99),也就是99个空格
2、COLUMN(reference),COLUMN(A2),也就是A2的列数
3、SUBSTITUTE(text,old_text,new_text,[instance_num]),
例如:SUBSTITUTE($A2,",","-",3)的效果就是把A2单元格的第3个逗号换成-号,当省略第四参数的时候,代表逗号全部替换。
4、MID(text, start_num, num_chars),即,在目标字段(text)中,从左边第几位开始(start_num),截取几个字段(num_cha