Excel函数实现字符串表达式求和
来源:网络收集 点击: 时间:2024-04-26首先将文本合并,利用,contamnate,如果不需要连接符可以使用phonetic。
B15=CONCATENATE(B4,+,B5,+,B6,+,B7,+,B8,+,B9,+,B10)
或
B13=B4+B5+B6+B7+B8+B9+B10


对于连接符中的单位可以利用substitute函数来进行替换。
B13=SUBSTITUTE(B4+B5+B6+B7+B8+B9+B10,kg,)

=SUBSTITUTE(+B4+B5+B6+B7+B8+B9+B10+,kg,)
输入公式=SUBSTITUTE(B13,+,_,1)
可以得到第一个+号被替代成特殊字符“_“
输入公式=SUBSTITUTE(B13,+,_,2)可以得到第一个+号被替代成特殊字符“_“ 。
通过find函数可以得到第一个“_”和第二个“_”的位置,因此可以得到两者之间的字符。通过value函数变成数字,出错赋值为0.得到公式。
=IFERROR(VALUE(MID(B13,FIND(_,SUBSTITUTE(B13,+,_,1))+1,FIND(_,SUBSTITUTE(B13,+,_,2))-FIND(_,SUBSTITUTE(B13,+,_,1))-1)),0)。这里面B13可以用SUBSTITUTE(+B4+B5+B6+B7+B8+B9+B10,kg,)来进行替代。


在第三步当中我们顺利取出了第一个数字,利用同样的方法,我们可以取出所有的数字,然后sum求和。为了能够简化,我们尝试运用数组来计算。可以将1和2改为row(A1:A15)和row(A1:A15)+1来替代。A15后面的具体数字依加和的数字个数来定。
{=IFERROR(VALUE(MID(B13,FIND(_,SUBSTITUTE(B13,+,_,ROW(A1:A15)))+1,FIND(_,SUBSTITUTE(B13,+,_,ROW(A1:A15)+1))-FIND(_,SUBSTITUTE(B13,+,_,ROW(A1:A15)))-1)),0)}
5/5步骤4得到的是一个数组,我们在公式中加入sum函数求和:
=SUM(IFERROR(VALUE(MID(B13,FIND(_,SUBSTITUTE(B13,+,_,ROW(A1:A15)))+1,FIND(_,SUBSTITUTE(B13,+,_,ROW(A1:A15)+1))-FIND(_,SUBSTITUTE(B13,+,_,ROW(A1:A15)))-1)),0))
按住ctrl+shift+Enter既可!
最终得到结果为10!

版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_597949.html