Excel VBA - 执行字符串作为代码

时间:2012-10-25 16:19:01

标签: excel vba

我尝试使用Evaluate执行以下字符串作为代码但得到错误2029.任何人都知道为什么?

非常感谢。

Calculation = "Format(""21/08/2012"", ""MMM"")"
Value = Evaluate(Calculation)

2 个答案:

答案 0 :(得分:0)

尝试改为

Calculation = "TEXT(""21/08/2012"", ""MMM"")"

EVALUATE将公式转换为结果,FORMAT是VBA函数。等效的公式是TEXT。

您也可以跳过评估并直接在日期使用FORMAT功能。

答案 1 :(得分:-1)

您可以使用Application.WorksheetFunction.直接在VBA中使用大多数工作表函数 - 例如 - 试试这个:

Sub DateExample()

Dim StringTest As String
StringTest = Application.WorksheetFunction.Text("12/08/2012", "MMM")

Cells(1, 1).Value = StringTest

End Sub

祝你好运