EXCEL中如何批量保留或提取想要的数据

现可得一列数据,想从这列数据中提取出想要的部分放于其他列中,其中X指代字母

例如:A列数据为:
A1:“...XX-11/01 1XX/X 000-00001/0109/111-1111 1111/11XX; ...XX:XXXX10XX123; XXXXXX XX XX:XXXX10XX123 XX XXXXX XXXX”
A2:“...XX-11/02 8XX/X 000-00032/3108/111-1111 1111/11XX; ... XX:XXXX1181X8XX ;”
A3:“...XX-11/03 10XX/X 000-00103/3008/111-1111 1111/11XX; ...;”

希望在B列中显示
B1:1XX
B2:8XX
B3:10XX

希望在C列中显示
C1:X 000-00001
C2:X 000-00032
C3:X 000-00103

在D列中显示:
D1:0109
D2:3108
D3:3008

在E列中显示:
E1:XX:XXXX10XX123
E2:XX:XXXX1181X8XX
E3:

A列中的数据都是有固定格式的,如B中的数据就是A中第一个空格到第二个“/”之间的数据,C中的数据是第二个“/”到第三个“/”间的数据;E列中的数据是第二个“...”后第二个“;”前的数据,但不知道公式或函数怎么表达,谢谢各位的帮忙!
谢谢各位热心的帮忙,我大概看了一下,如果用简单的MID函数是会出现问题的,因为B1中XX前面的数字并不都是1位数,也可能是两位数,三位数

Jeffay001的答案还没来得及验证
等试验过了再来这里冒泡哈

你这个问题难倒是不难,就是特麻烦。
还好我有点耐心,要不然怕没有人愿意干这活了。
B1:
=MID(SUBSTITUTE(A1,"/","+",2),FIND(" ",SUBSTITUTE(A1,"/","+",2))+1,FIND("+",SUBSTITUTE(A1,"/","+",2))-FIND(" ",SUBSTITUTE(A1,"/","+",2))-1)

C1:
=MID(SUBSTITUTE(A1,"/","+",2),FIND("+",SUBSTITUTE(A1,"/","+",2))+1,FIND("*",SUBSTITUTE(A1,"/","*",3))-FIND("+",SUBSTITUTE(A1,"/","+",2))-1)

D1:
=MID(SUBSTITUTE(A1,"/","+",3),FIND("+",SUBSTITUTE(A1,"/","+",3))+1,FIND("*",SUBSTITUTE(A1,"/","*",4))-FIND("+",SUBSTITUTE(A1,"/","+",3))-1)

E1:
=MID(SUBSTITUTE(A1,"...","+",2),FIND("+",SUBSTITUTE(A1,"...","+",2))+1,FIND("*",SUBSTITUTE(A1,";","*",2))-FIND("+",SUBSTITUTE(A1,"...","+",2))-3)

然后分别把公式往下拉就可以了。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2007-09-01
用函数LEFT、MID、RIGHT这三个可以从不同位置选取你想要的那组数。

在B1输入=MID(A1,12,3)
在B2输入=MID(A2,12,3)
在B3输入=MID(A2,12,4)
这三个函数是从不同方向选取你想要的数据。
MID是从中间选取,其中12是从第一个字母到你要的字符串前的所有字符数,3是你想要的字符串的字符数。
以下的你就自已算吧!
第2个回答  2007-09-01
用MID函数
相似回答