excel函数里如何提取2个符号中间的值

比如单元格内:100-101-202,
我要提取2个 - 中间的值:101
如何用函数做到?

excel函数提取2个符号中间的值的步骤是:

1、打开Excel工作表;

2、观察已知数据规律,需要提取出两个-之间的数据,可以通过SUBSTITUTE函数将-替换为100个空格,然后取第2个100字符,然后将前后的空格通过TRIM去除。

3、在B2单元格输入以下公式,然后向下填充公式

=--TRIM(MID(SUBSTITUTE(A2,"-",REPT(" ",100)),100,100))

公式表示:将A2单元格的分隔符号-以100个空格代替,然后从替换后的100字符位置提取100个字符长度,并将前后的空格通过TRIM去除,通过--转换为数值。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-11-06
1.
公式:2个符号中间的数值里又没有其他符号的时候,假定是A1中的数据,符号第一个是@,第二个!,直白点的公式:
=MID(A1,FIND("@",A1,1)+1,FIND("!",A1,FIND("@",A1,1)+1)-FIND("@
",A1,1)-1)通用化得话给你代入的话,就是
=MID(A1,FIND("第一个符号",A1,1)+1,FIND("第二个符号",A1,FIND("第一个符号",A1,1)+1)-FIND("第一个符号",A1,1)-1)注意公式里符号的中英文格式
2.
更推荐这个替换:你把这一列复制到新的一列,选中新的列,ctrl+F,替换,查找栏里填@,替换栏空白,点全部替换,符号就没了,后面的符号同理。
如果123@4567!89,这样的数据,结果只要中间的4567的话(方法1公式的结果就是这样),查找填*@,替换栏空白就@和它前面全去掉了,这个星号*是指代替任意数量的任意字符。所以@前的都会被去除掉。然后第二步,!后面同理,查找!*,替换空白。
看你题目的话,应该这2种就够用了..简单粗暴。推荐第二种。
友情提醒一下,如果提取完是15位数字以上的,先转化为文本格式在处理哈。超过15位的那些就不可逆的转化成0啦。
最后,处理数据,记得先备份一份哟。
修改:如果是为了计算某单元格里的运算式,只要结果的话,不用那么麻烦。
金山WPS的电子表格里有calculate函数,A2里呈现A1运算结果,A2=calculate(A1)。
excel没有这个函数,但是可以vba实现,模块代码百度很多搜一下就行。
如果还是要提取的,依次套用上面的公式,或者按照其他回答的公式套用一样的。
第2个回答  2019-09-10
excel函数里提取2个符号中间的值如下所示:
工具:office
excel
步骤:
1、打开office
excel,选中需要提取中间值的数据内容,从最左边起取字符。
=left(源数据格,提取的字符数)
=left(E2,2)
如图所示即完成从单元格A3的最左边起,提取2个字符。
2、从最右边起取字符
=right(源数据格,提取的字符数)
=right(E2,2)
如图所示即完成从E2单元格最右边起,提取2个字符。
3、从中间提取几个字符
=mid(E2,1,9)
如图所示即完成提取单元格E2中第一位起后面9位。
=mid(sheet1!
E2,1,9)
如图所示即完成提取sheet1表的单元格E2中第一位起后面9位。
第3个回答  2010-06-12
假设100-101-202在单元格A1,则使用如下公式:
=MID(A1,FIND("-",A1)+1,FIND("-",A1,FIND("-",A1)+1)-FIND("-",A1)-1)本回答被提问者采纳
第4个回答  2010-06-12
假如该数据在A1单元格,要在B1单元格显示提取的数据,那么在B2单元格输入公式=MID(A1,FIND("-",A1)+1,FIND("-",A1,FIND("-",A1)+1)-FIND("-",A1)-1)即可,下拉复制后得到A列里相应数据的提取
相似回答