有没有办法将字符串转换为可执行的代码行?

就像是:

Dim Line1 as String
Line1 = "MsgBox (""Hello"")"
Execute Line1

导致弹出框说你好。

我正在做的是从文本文件中提取行。我可以拉出作为表单控件名称的行并使用它们对这些表单控件执行操作,但我想更进一步并执行行。
我已经看到声称这会起作用:
Application.Run Line1

或将变量设为数组并将其存储在元素 1 中,例如并使用
Application.Run Line1(1)

但这对我不起作用。

好的,在写这篇文章的同时,我也一直在试验。我找到
Eval (Line1)

当 Line1 是一个消息框时会起作用,但当它是这样的时候不起作用:
line1 = "DoCmd.OpenForm ""form1"""

任何提示将不胜感激。

谢谢

最佳答案

您可以使用,

 Eval("DoCmd.OpenForm(""form1"")")

您必须确保包含的任何函数都使用括号。
进一步引用,
http://msdn.microsoft.com/en-us/library/office/aa172212(v=office.11).aspx

关于string - VBA如何将字符串作为一行代码运行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24956527/

10-10 10:56