我有一个范围,包含数值和&空白细胞。某些数值将*作为后缀。
10* 5 7 9 25* 10
当我执行SUM(A1:A8)时,得到5 + 7 + 9 + 10 = 31的结果,即所需的输出。 现在,我还要求总和,而不考虑*后缀。我正在尝试使用
来解决SUMPRODUCT(SUBSTITUTE(A1:A8,"*",""))
它适用于
SUMPRODUCT({"10","5","7","","9","","25","10"})
输出0,因为它们都是文本值。当我使用
SUMPRODUCT(value(SUBSTITUTE(A1:A8,"*","")))
它适用于
SUMPRODUCT({10,5,7,#VALUE!,9,#VALUE!,25,10})
最后输出#Value!。有人可以帮我解决这个问题吗?谢谢你的时间。
答案 0 :(得分:5)
我认为空白是问题,因为当你使用= VALUE(“”)时会出现错误。尝试将零连接到SUBSTITUTE的开头,以便空白变为零
=SUMPRODUCT(VALUE(0&SUBSTITUTE(A1:A8,"*","")))
或者您可以使用+0代替VALUE,即
=SUMPRODUCT((0&SUBSTITUTE(A1:A8,"*",""))+0)
答案 1 :(得分:0)
尝试
=SUM(VALUE(SUBSTITUTE(A1:A8,"*","")))
并使用Ctrl + Shift + Enter输入,而不是输入。这使它成为一个数组公式,并将A1:A8
范围视为SUBSTITUTE()
函数的数组。因此,SUBSTITUTE()
现在分别评估A1:A8中的每个单独值。 VALUE()
将文本转换为数字,sum()将所有文本添加到数字中。
修改:公式=SUMPRODUCT(VALUE(SUBSTITUTE(A1:A8,"*","")))
似乎对我有用。 (正常公式,不是数组公式)。