如下图所示,A1:B8为商品采购表,要求提取B列采购数量中的数字。
在C2单元格输入公式 =-LOOKUP(0,-LEFT(B2,ROW($1:$9)))
拖动填充柄向下复制公式。
公式解析:
(1)ROW($1:$9)返回数组{1;2;3;4;5;6;7;8;9}
(2)LEFT(B2,ROW($1:$9))指分别从B2单元格提取前1个、2个、3个……9个字符。LEFT函数返回的结果为{"1";"10";"10桶";"10桶";"10桶";"10桶";"10桶";"10桶";"10桶"}。由于B2单元格只有3个字符,因此从B2单元格提取的前3个至前9个字符均为“10桶”。
(3)-LEFT(B2,ROW($1:$9))在LEFT函数前添加负号,可以将LEFT提取的数值型文本转为数值,非数值型的文本转为错误值。其返回的结果为
{-1;-10;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!}
(4)LOOKUP(0,-LEFT(B2,ROW($1:$9))),即在
{-1;-10;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!}
中查找“0”。当LOOKUP查找不到“0”时,会返回小于“0”的最后一个数值“-10”。
(5)-LOOKUP(0,-LEFT(B2,ROW($1:$9)))在LOOKUP函数前添加负号,将返回的负值转为正值。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。