excel中,如果我要取某个特定字符之 前的字段怎么做

比如:6203-H5050 6204-B505 608-A3232 885005-C5050 我只想要“-”之前的包括-后的第一个字母
1楼的朋友,感谢你的帮助,如你所说,-这个符号我要保留该怎么做

在excel中,取某个特定字符之前的字段可以使用LEFT()和FIND()两个函数组合实现。

具体步骤如下:

1、首先准备一张excel表格和部分临时测试数据,我们希望取特定字符“K”之前的字段,如“设备维修”、“家电保养”等(为了将解题思路更清晰的展示,我们将中间步骤也作为单独的列进行处理);

2、先查找特定字符的位置,在B2单元格中输入,回车确认;

3、回车后,会发现B2单元格已经设置成功并取到了字符“K”的位置,接着在C3单元格输入“=LEFT(A2,B2-1)”,回车确认;

因为之前B2单元格为K所在位置索引,B2-1代表取“K”之前的位置索引。

4、回车后,可以看到K之前的字符就取出来了,那么下面,我们将这两步合并为一步,将B2单元格中的公式代入C2单元格中,直接在D2单元格中输入“=LEFT(A2,FIND("K",A2,1)-1)”,回车确认;

5、这样,针对D2的公式就设置好了,然后将D2公式复制;

6、将D2单元格公式复制后,复制到其他单元格中,整个表格就按照要求做好了。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-09-23

方法:

1.假设列A是一组产品的编码,我们需要的数据是“-”之前的字段。

2.需要在B1单元格输入公式“=LEFT(A1,SEARCH("-",A1)-1)”然后选中B1至B4单元格,按“CTRL+D”向下填充,就可以得出其它几行“-”之前的字段。

3.如果要得出“-”之后的字段,则在C1单元格输入“=RIGHT(A1,LEN(A1)-SEARCH("-",A1))”,然后选中C1到C4,CTRL+D向下填充。

4.公式解释:

search(特定字符,字符串) 返回指定字符在字符串中第一次出现的位置。以A1为例“-”出现的位置是4.

len(字符串) 返回字符串的长度。以A1为例,A1中字符串的长度为8

left(字符串,N) 返回字符串从左边数起至第N个字符的字段。如LEFT(A1,3)则会返回“abc”

right(字符串,N) 返回字符串从右边数起至第N个字符的字段。如RIGHT(A1,4)则会返回“1256”


5.如果字符串是以“*”或“?”等通配符来隔开的,则公式要输入“=LEFT(A1,SEARCH("~*~",A1)-1)”/"=RIGHT(A1,LEN(A1)-SEARCH("~*~",A1))"


分列的方法


1.首先复制A列到B列,然后确认C列为空行,因为分列后会覆盖C列原有的值,所以必须确保C列为空。

2.选中B列,点击“数据”—“分列”,选中“分隔符号”然后点击下一步

3.在其它选项中输入“-”,然后点击下一步完成分列。

第2个回答  2010-08-21

=MID(A2,SEARCH("-",A2)-1,3)

这条公式的意思是:从A2单元格里查找到“-”,然后从它的左边第一位开始向右数3位。

看一下图是你要的结果吗?

本回答被提问者采纳
第3个回答  2010-08-15
要保留"-"? 把它加上去就可以了
如字符串在A1,在a2写如下表达式:
=LEFT(A1,FIND("-",A1,1)-1) & "-" & MID(A1,FIND("-",A1,1)+1,1)
第4个回答  2010-08-15
听的不是太明白,你的问题好象关键是如何保留和使用“-”,你在电子表格中双击后,鼠标的光标就可以停留在单元格内,然后你在确定的位置插入就可以了。
相似回答