如何使用VBA将配置为数组的公式添加到单元格中?
当我直接在一个单元格中键入函数时,它会将值返回到一系列单元格中。
例如。
在单元格N34中,我输入{= myFunction(“ datacollector”;“ nameOfVariable”;“ startDate”;“ endDate”; TRUE)}
该函数返回单元格N34到P59中的值。
在VBA中,当我创建函数字符串并将其插入到单元格中时,我遇到运行时错误。
我正在创建不带{}以及其他单元格数据的函数字符串。
代码是:
tempStr = "=myFunction(""" & Sheet1.Cells(2,1) & """;""" & Sheet1.Cells(3,1) & """;""" & Sheet1.Cells(4,1) & """;""" & Sheet1.Cells(4,1) & "TRUE" ")"
Sheet1.Cells(34,14).FormulaArray = tempStr
also tried
Sheet1.Range("N34:P59").FormulaArray = tempStr
我明白了
运行时错误'1004'
如果我首先在函数字符串周围添加{}
tempStr = "{=myFunction(""" & Sheet1.Cells(2,1) & """;""" & Sheet1.Cells(3,1) & """;""" & Sheet1.Cells(4,1) & """;""" & Sheet1.Cells(4,1) & "TRUE" ")}"
Sheet1.Cells(34,14).FormulaArray = tempStr
它将结束于单元格中,但会以字符串形式出现,如果我删除了{},该函数将返回预期的值。 (因此该字符串已正确创建。)