excel vba中string奇怪的运行时错误1004
我有一个奇怪的问题,试图写出这个非常简单的VBA方法
这工作正常:
ThisWorkbook.Sheets("Analyse").Cells(i, 2) = "=HiGuys"
这工作正常:
ThisWorkbook.Sheets("Analyse").Cells(i, 2) = "=VLOOKUP"
但是,这会得到一个“运行时错误1004”,而不应该这样做。
ThisWorkbook.Sheets("Analyse").Cells(i, 2) = "=VLOOKUP("
我在这里错过了一些明显的东西…?
非常感谢 !
是的,你是。 🙂
你编码
ThisWorkbook.Sheets("Analyse").Cells(i, 2) = "=VLOOKUP("
它是平等的
ThisWorkbook.Sheets("Analyse").Cells(i, 2).Formula = "=VLOOKUP("
而且你不能在Excel中制作一个不完整的公式。 如果你想写的只是string“= VLOOKUP(”你可以这样做:
ThisWorkbook.Sheets("Analyse").Cells(i, 2) = "'=VLOOKUP("
[与一切之前]
如果你想要一个真正的公式,你需要完成它,如
ThisWorkbook.Sheets("Analyse").Cells(i, 2).Formula = "=VLOOKUP(A1,A:C,2,False)"
必须有一定程度的“保护”
Sub asdf() ActiveCell.Value = "=VLOOKUP(" End Sub
会抛出一个“1004”,但是:
Sub asdf2() ActiveCell.Value = "=VLOOKUP" End Sub
将不会。
这与您尝试手动input错误公式时工作表的响应方式类似。