要提取指定字符之前的字段有两个方法,一个是用公式,一个是用EXCEL的分列功能。
前期准备工作(包括相关工具或所使用的原料等)
excel公式的方法
假设列A是一组产品的编码,我们需要的数据是“-”之前的字段。
![EXCEL小技巧:[4]如何提取指定字符之前的字段](http://www.52ij.com/uploads/allimg/160404/1Q4415026-0.jpg)
我们需要在B1单元格输入公式“=LEFT(A1,SEARCH("-",A1)-1)”然后选中B1至B4单元格,按“CTRL+D”向下填充,就可以得出其它几行“-”之前的字段。
![EXCEL小技巧:[4]如何提取指定字符之前的字段](http://www.52ij.com/uploads/allimg/160404/1Q4412L2-1.jpg)
如果要得出“-”之后的字段,则在C1单元格输入“=RIGHT(A1,LEN(A1)-SEARCH("-",A1))”,然后选中C1到C4,CTRL+D向下填充。
![EXCEL小技巧:[4]如何提取指定字符之前的字段](http://www.52ij.com/uploads/allimg/160404/1Q4415253-2.jpg)
公式解释:
search(特定字符,字符串) 返回指定字符在字符串中第一次出现的位置。以A1为例“-”出现的位置是4.
len(字符串) 返回字符串的长度。以A1为例,A1中字符串的长度为8
left(字符串,N) 返回字符串从左边数起至第N个字符的字段。如LEFT(A1,3)则会返回“abc”
right(字符串,N) 返回字符串从右边数起至第N个字符的字段。如RIGHT(A1,4)则会返回“1256”
![EXCEL小技巧:[4]如何提取指定字符之前的字段](http://www.52ij.com/uploads/allimg/160404/1Q4413S6-3.jpg)
![EXCEL小技巧:[4]如何提取指定字符之前的字段](http://www.52ij.com/uploads/allimg/160404/1Q44140c-4.jpg)
如果字符串是以“*”或“?”等通配符来隔开的,则公式要输入“=LEFT(A1,SEARCH("~*~",A1)-1)”/"=RIGHT(A1,LEN(A1)-SEARCH("~*~",A1))"
![EXCEL小技巧:[4]如何提取指定字符之前的字段](http://www.52ij.com/uploads/allimg/160404/1Q4413U8-5.jpg)
分列的方法
首先复制A列到B列,然后确认C列为空行,因为分列后会覆盖C列原有的值,所以必须确保C列为空。
![EXCEL小技巧:[4]如何提取指定字符之前的字段](http://www.52ij.com/uploads/allimg/160404/1Q4416346-6.jpg)
选中B列,点击“数据”—“分列”,选中“分隔符号”然后点击下一步
![EXCEL小技巧:[4]如何提取指定字符之前的字段](http://www.52ij.com/uploads/allimg/160404/1Q4415D5-7.jpg)
在其它选项中输入“-”,然后点击下一步完成分列。
![EXCEL小技巧:[4]如何提取指定字符之前的字段](http://www.52ij.com/uploads/allimg/160404/1Q4413646-8.jpg)
![EXCEL小技巧:[4]如何提取指定字符之前的字段](http://www.52ij.com/uploads/allimg/160404/1Q4414U4-9.jpg)
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
