vlookup函数文本格式能取数吗,EXCEL中如何使用VLOOKUP函数提取单元格字符串中的数值?

vlookup函数文本格式能取数吗,EXCEL中如何使用VLOOKUP函数提取单元格字符串中的数值?

Excel中如何使用VLOOKUP函数提取单元格字符串中间的数值

vlookup函数文本格式能取数吗,EXCEL中如何使用VLOOKUP函数提取单元格字符串中的数值?

使用的公式是:

=VLOOKUP(9E+307,MID(A2,MIN(IF(ISNUMBER(--MID(A2,ROW($1:$99),1)),ROW($1:$99))),ROW($1:$99))*{1,1},2)

输入完公式按CTRL+SHIFT+ENTER键

题主图片里面已经给出了公式的结果,应该更多的是想知道这个公式是怎么来的,应该怎么样去理解,其实所有的长公式都是有固定的思路组成的,我们以B2的数字来源为例来解读这个思路的过程

❶使用使用MID(A2,ROW(1,99),1),把所有的数据拆开,最大长度是99个

=MID($A$2,ROW(),1)

vlookup函数文本格式能取数吗,EXCEL中如何使用VLOOKUP函数提取单元格字符串中的数值?

❷在前面的公式加上两个负号,乘以两次-1,数字能得到结果,非数字出现错误

=--D1

vlookup函数文本格式能取数吗,EXCEL中如何使用VLOOKUP函数提取单元格字符串中的数值?

❸判断是否是数字,如果是数字,返回行号

=IF(ISNUMBER(E1),ROW())

vlookup函数文本格式能取数吗,EXCEL中如何使用VLOOKUP函数提取单元格字符串中的数值?

❹再使用min()函数,获取了这个出现数字的第1个位置,是4个位置

=MIN(F1:F99)

❺然后再使用MID()函数,从第4位开始拆解信息,依次取1,2,3,4...99位得到一个数组

MID($A$2,$G$1,ROW())*1vlookup函数文本格式能取数吗,EXCEL中如何使用VLOOKUP函数提取单元格字符串中的数值?

❻用*{1,1}得到了两列数组

=MID($A$2,$G$1,ROW())*1

vlookup函数文本格式能取数吗,EXCEL中如何使用VLOOKUP函数提取单元格字符串中的数值?

❼最后使用VLOOKUP的模糊查找得到了最终的结果:

=VLOOKUP(9E+307,H:I,2)

vlookup函数文本格式能取数吗,EXCEL中如何使用VLOOKUP函数提取单元格字符串中的数值?

这些辅助列的过程,就是公式的思路过程,所以说,在这个思路内我们可以调整公式,例如使用这个公式:

=VLOOKUP(9^9,--MID(A2,MIN(IF(ISNUMBER(--MID(A2,ROW($1:$99),1)),ROW($1:$99))),ROW($1:$99)),1,1)

按三键也能得到最终的结果

vlookup函数文本格式能取数吗,EXCEL中如何使用VLOOKUP函数提取单元格字符串中的数值?

我们要学习用这种方法来理解公式,这个技巧,你学会了么?

头条号:Excel自学成才,作者:E博士,职场5年数据分析实例经验,欢迎关注,主页有更多精彩内容。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 xxx@163.com 举报,一经查实,本站将立刻删除。

发表评论

登录后才能评论