现实中提取字符的情况有很多种,在此给一种比较经典的用法find 1/17,具体的先看一个群友提出的问题吧!
有群友提问,要从左边的字段里提取规格,仔细观察,可以看到其实规格就是第一个数字及后面的部分内容,我们该如何提取呢?
最容易想到的就是第一个数字出现的位置吧,如果知道了位置,使用mid,right等各种函数都可以实现了!
一般想找某个字符在一串字符中位置,想到就是find或者search函数了,这里我们就使用常见的find函数,Find函数用来对原始数据中某个字符串进行定位,以确定其位置。第一个数字,不确定是几,所以这时我们可以使用row(1:10)-1函数来代替{0,1,2,3,4,5,6,7,8,9},find函数分别找出0-9这十个数字在后面产生的A2&1/17这个文本里的位置,然后用min找出其中最小的位置就是最靠前的数字位置,然后用mid从第一个数字开始的位置一直取出后面所有的数字部分。因为有的数字里不是0-9的数字都有,为了防止find函数找不到这些数字出现错误值,所以在后面合并了一个文本就是1/17,你用科学计数器算一下,1/17=0.0588235294117647的结果里包含了所有0-9的10个数字,可以确保find函数能得出正确的结果,不至于函数产生错误值!
经过上面的分析,可以找出第一数字出现的位置了,那我们直接使用mid函数就可以得出结果了
最终的公式就是:=MID(A2,MIN(FIND(ROW($1:$10)-1,A2&1/17)),99)
不要忘了,这是数组公式,最后要ctrl shift 回车键三键结束
今天的分享就到这里,如果想动手试试,可以下载一下示例文件。
本文示例文件链接
http://pan.baidu.com/s/1nyPjw
联系客服