Excel:一个单元格中的数字,添加另一个单元格

时间:2017-01-03 14:25:10

标签: excel

是否可以在一个单元格中列出几个数字(不添加它们)并在另一个单元格中显示结果?应该看起来像这样:

===========================================================
5+4+4+5+0+1+1+1,11 (first cell) == (second cell)    21,11==      
===========================================================

如果是这样,怎么办呢?

谢谢

1 个答案:

答案 0 :(得分:0)

工作表解决方案

  

请注意:建议不要使用此解决方案。如果您只有一个要评估的字符串就足够了,但如果您有多个

则无效

这使用了(隐藏的)EVALUATE函数,我认为只能使用命名范围来访问它。

注意这不适用于,11,但可以与字符串的其他部分一起使用。我建议你把它们分开然后再加入

  1. 将您的字符串(5+4+4+5+0+1+1+1,11)放入单元格 A1 (仅适用于此示例)
  2. 在功能区上导航至Formulas>Name Manager
  3. 点击New调用名称"结果"并在"中输入=EVALUATE(A1)指的是:"领域。然后单击“确定”
  4. 关闭对话框
  5. 在单元格 B1 中输入=result,然后在那里
  6. <小时/>

    VBA解决方案

    您最好的选择可能是使用VBA。使用Evaluate函数也使这项任务更容易一些。将下面的代码放入VBA编辑器中的新模块中,并在工作表上使用以下语法:

    =EvaluateString(A1)
    

    这将根据需要返回21,11输入5+4+4+5+0+1+1+1,11

    Function EvaluateString(rng As Range)
        Dim allNums As Variant
        allNums = Split(rng.Value, ",")
    
        Dim num As Variant
        Dim result As String
        For num = 0 To UBound(allNums)
            result = result & Application.Evaluate(allNums(num)) & ","
        Next num
    
        EvaluateString = Left(result, Len(result) - 1)
    End Function