单元格中的数据包含文本和数字(如),如何使用公式求出该单元格中的数字之和?
单元格中的数据包含文本和数字(如),如何使用公式求出该单元格中的数字之和?
先不看答案,自已动手试一试。
公式思路
先将文本屏蔽,然后求数字之和。
公式
数组公式如下:
=SUM(IFERROR(1*MID(A1,ROW(1:10),1),0))
公式解析
首先,公式:
MID(A1,ROW(1:10),1)
将单元格A1中的数据转换成一个数组:{“a”;”b”;”c”;”1”;”2”;”3”;””;””;””;””}。
我们假设单元格A1中的数据长度不会超过10个。
然后,将数组乘以1,即公式:
1*MID(A1,ROW(1:10),1)
得到数组{#VALUE!; #VALUE!; #VALUE!;1;2;3; #VALUE!; #VALUE!; #VALUE!; #VALUE!}。
接下来,使用IFERROR函数将错误值转换成0,即公式:
IFERROR(1*MID(A1,ROW(1:10),1),0)
得到数组{0;0;0;1;2;3;0;0;0;0}。从而,将单元格中的数字分离了出来。
最后,SUM函数对上面产生的数组求和,得到最终的结果。
小结
使用MID函数,可以实现数据分离。
数字与文本相乘将产生错误值。