在文本字符串中提取数值 - Qzone日志

来源:百度文库 编辑:神马文学网 时间:2024/04/28 20:17:05

题目:不改变B列的条件下,计算金额

 

=LEFT(C4,SUM(N(ISNUMBER(MID(C4,ROW(INDIRECT("1:"&LEN(C4))),1)*1))))*D4   数组公式

 

解题思路:

1、用 MID(C4,ROW(INDIRECT("1:"&LEN(C4))),得到一个文本格式的5行1列的常量数组 如 {"2";"0";"0";"公";"斤"}

2、再用这个常量数组 {"2";"0";"0";"公";"斤"}*1 将文本转换成数值,结果为 {2;0;0;#VALUE!;#VALUE!} 

3、用ISNUMBER函数判断是否为数值,如果是则返回TRUE,结果返回 {TRUE;TRUE;TRUE;FALSE;FALSE}

4、用N函数将逻辑值TRUE转换成1FALSE转换成0,转换后的结果为 {1;1;1;0;0},然后用SUM求和得到3

5、用LEFT函数提取C4单元格左边3个字符,提取后的结果为200(数量)*单价=金额

 

效果图: