Excel中提取特定文字前的数据的函数?

举一个例子可能比较容易理解
比如我从其他的软件中复制过来一个这样的数据
假设在A1单元格,“5时25分36秒”
对于Excel来说它只是一些字符,excel认定为文本
我现在希望只是提取其中的25或者其中的36
也就是说提取“分”或者“秒”之前的这个数据需要使用什么样的函数。
hour,munite,second这些函数只能对标准的时间格式提取时分秒的数据,而这个是一个文本形式
还有假设并不是“时分秒”而是其他数据的时候也能提取,比如从“125件”中提取125,也就是“件”,因为字符串长度不定,不适合left,rigt,mid,len这些函数

这样的数据不一定是文本,也可能是时间格式。
如果是时间格式,取分的公式是=MINUTE(A1),取秒的公式是=SECOND(A1)。
如果是文本格式,取分的公式是=MID(A2,FIND("时",A2)+1,FIND("分",A2)-FIND("时",A2)-1),取秒的公式是=MID(A2,FIND("分",A2)+1,FIND("秒",A2)-FIND("分",A2)-1)。
可见,这样的数据设置为时间格式会方便不少。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-01-01
如果数据格式一样的话比较好办,提取36可用=MID(A1,6,2),提取25可用=MID(A1,3,2),表示从A1数据的第6(3)个字符起取2个字符
第2个回答  2009-01-01
答案都很精彩
如果是125件就更简单了
=left(a1,len(a1)-1)
第3个回答  2009-01-01
分 =mid(a1,find("时",a1)+1,find("分",a1)-find("时",a1)-1)
秒 =mid(a1,find("分",a1)+1,find("秒",a1)-find("分",a1)-1)

子易空间站 - 高效办公指导网站
第4个回答  2009-01-01
取分的公式为: =MID(A1,FIND("时",A1)+1,FIND("分",A1)-FIND("时",A1)-1)
取秒的公式为: =MID(A1,FIND("分",A1)+1,FIND("秒",A1)-FIND("分",A1)-1)
相似回答