我在获取EVAL函数以将字符串评估为可执行代码行时遇到麻烦。我在网上找不到太多有关将其用于此目的的信息。 (也许是因为无法完成?)。
Public Function UpdateControlBackground (frobnitz as String)
Eval(frobnitz)
End of Function
frobnitz
是字符串“ Forms!Main." & rs!NameOfControl & ".Backcolor = " & Str(lngColor)
Rs!NameofControl
来自记录。 lngColor
是根据相同记录的十六进制颜色字符串计算得出的。
如果我采用字符串求值的方式并在立即窗口中执行它,则可以正常工作。通常情况如下:
Forms!Main.bxBEStep1.Backcolor = 123456 'object is a box as a background
-或-
Forms!Main.SUB_Visits.Form.Section(0).Backcolor = 123456 '0 is the detail section
当前它的值为0(假)。由于等号并不奇怪。但更重要的是,似乎我需要以某种方式指定将函数的结果定义为可执行代码并执行它。
我猜可能应该是这样的形式:
Public Function UpdateControlBackground(Frobnitz as String) As ???
但是我不知道???应该。我尝试了建议列表中的各种项目,但均无济于事。任何建议都欢迎。