在EXCEL中怎样查找字符串中第一个或最后一个数字的位置.

比如,有字符串:单元格A1内容:<<<2013.1.29大盘强势上涨,.....单元格A2内容:<<<2013.10.18创业板大盘放量大跌,.....单元格A3内容:<... 比如,有字符串:
单元格A1内容: <<<2013.1.29大盘强势上涨,.....
单元格A2内容: <<<2013.10.18创业板大盘放量大跌,.....
单元格A3内容: <<<2014.9.3中小板波澜不惊,收缩量十字星,.....
我想将日期部分提取出来, 日期前面的三位可用Ctrl+F用空位取代, 但日期后面中文不知如何去掉, 心想如果今后有类似的需要去年数字两头的字符, 得知道第一个或最后一个数字的位置, 这样就可以用left与right函数来去掉两头字符了.
或许还有其它方法, 总之,请大家多帮忙!
展开
 我来答
指尖码动
高粉答主

2019-09-25 · 指尖舞动出精神世界的延伸,哦,那是思想吧
指尖码动
采纳数:28 获赞数:43836

向TA提问 私信TA
展开全部

1、首先使用Excel打开任意一个空白表格文件。

2、再在表格单元格A1输入一个带有数字的随机字符串,在A2单元格输入“第一个数字的位置:”,A3单元格输入“最后一个数字的位置:”。

3、在B2单元格输入:“=MIN(FIND(ROW(1:10)-1,A1&5^19))”。

4、按下CTRL+Shift+enter组合键,即可在B2单元格输出字符串第一个数字的位置。

5、在B3单元格输入:“=LOOKUP(1,0/MID(A1,ROW(1:99),1),ROW(1:99))”。

6、按下CTRL+Shift+enter组合键,即可在B3单元格输出字符串最后一个数字的位置。

EXCEL办公实战
推荐于2017-09-29 · Excel办公实战函数、技巧、VBA教程
EXCEL办公实战
采纳数:2380 获赞数:23630

向TA提问 私信TA
展开全部

使用LOOKUP、min、Find等函数综合处理。


Excel版本参考:2010

1、提取数值开始的位置,选中B2输入公式:=MIN(FIND(ROW(1:10)-1,A1&5^19)),按下CTRL+Shift+enter组合键;

2、最后一个数字的位置,选中B2输入公式:=LOOKUP(1,0/MID(A1,ROW(1:99),1),ROW(1:99)),按下CTRL+Shift+enter组合键;

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wu_zhenjiu
科技发烧友

推荐于2017-10-10 · 有一些普通的科技小锦囊
知道大有可为答主
回答量:3.1万
采纳率:79%
帮助的人:1.1亿
展开全部
1、第一个数字位置:
=MIN(FIND(ROW($1:$10)-1,A1&"0123456789"))
2、最后一个数字位置:
=MAX(IF(ISNUMBER(--MID(A1,ROW($1:$50),1)),ROW($1:$50)))

以上两个公式都是数组公式,按三键CTRL+SHIFT+回车,完成公式。
追问
我怎么就看不懂数组公式, 可以看懂非数组的函数, 你上面的两个数组, 我拼在一起刚好可以提取里面的日期, 通用性很强, 可以解决日后很多类似的需求, 下面的答案也有很多优秀的,  但还你最了解我的需求,所以我决定把分赏给你.
我是不是还有什么没有接触到, 为什么一看到数组就完全不能理解, 能给我指个方向吗, 怎么看懂数组!
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hlhcygs
2014-10-11 · TA获得超过3174个赞
知道大有可为答主
回答量:2987
采纳率:66%
帮助的人:1922万
展开全部
=MID(A1,SMALL(IF(ISERROR(--MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1)),"",ROW(INDIRECT("1:"&LEN(A1)))),1),MAX(IF(ISERROR(--MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1)),"",ROW(INDIRECT("1:"&LEN(A1)))))-SMALL(IF(ISERROR(--MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1)),"",ROW(INDIRECT("1:"&LEN(A1)))),1)+1),按ENTER+SHIFT+CRTL。数组公式,日期前后都不能出现数字此公式才正确。
追问
这么多答案我都能看懂, 且都试了, 唯有你的准确率最高, 可以容许日期后面紧挨标点符号或英文,其它的答案都不行.
但唯有你的数组公式我就看不懂了, 请问我是不是有哪里还没有接触到, 能教教我怎么看懂数组公式吗? 一直困绕好久了? 好伤心哦!
追答
思路:先用MID将A1的字符一个一个的分出来,然后判断是否是数字,是数字的话返回在字符串的位置,然后用SMALL取出最小位置,MAX最大位置,也就是数字取值范围,然后再用MID将数字取出来。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友0209c3be5
2014-10-11 · TA获得超过105个赞
知道答主
回答量:67
采纳率:0%
帮助的人:57.7万
展开全部
=MIDB(A1,4,LEN(MIDB(A1,4,14))*2-LENB(MIDB(A1,4,14)))

里面的14指的是字符数,只要大于等于10 包含完日期的字符位数即可
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(7)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式