代码之家  ›  专栏  ›  技术社区  ›  Ans

Excel VBA公式字符串不计算:名称?错误

  •  0
  • Ans  · 技术社区  · 7 年前

    我在a1单元格中有一个sum公式中键入的子:

    Sub test_string()
        ThisWorkbook.Worksheets("test").Cells(1, 1) = "=СУММ(B1:D1)"
    End Sub
    

    一开始看起来很有效,但当我打开一个工作表时 #NAME? A1单元出错:

    enter image description here

    当我手动计算公式(将光标放在公式的文本中并单击“输入”)时,错误消失。

    为什么会发生这种情况,有办法解决吗?我试过了

    ThisWorkbook.Worksheets("test").Cells(1, 1).Calculate
    

    但没有结果。

    1 回复  |  直到 7 年前
        1
  •  3
  •   Chris Melville    7 年前

    您没有指定所需单元格的属性。

    单元格的默认属性为“值”。因此,当你写作时:

    Cells(1,1) = "=SUM(B1:D1)"
    

    …你说的是:

    Cells(1,1).Value = "=SUM(B1:D1)"
    

    您需要使用.formula属性:

    Cells(1,1).Formula = "=SUM(B1:D1)"
    
    推荐文章