如何在文本框中显示全局[static]变量的内容?

时间:2019-05-19 22:47:30

标签: vba forms ms-access textbox

我正在设置一个显示已计算的字符串变量的表单。数据来自子程序,这些子程序将其结果放入其他过程可以访问的变量中。如何定义textbox.controlsource属性以显示中间结果并继续该过程?

我在Access中研究了各种帮助文件,但找不到答案。

Main module
Option Compare Database
option Explicit

--------

Public strAnswer As String

--------


Public Sub GetQuestion([Several arguments defining question])

--------[Process arguments and come up with an answer string]


strAnswer = [computed string from above]


End Sub


public Sub ShowAnswer


Docmd.Openform "AnswerForm",acNormal,,,acFormReadOnly,acWindowNormal


End Sub

answerform中的文本框控件为空白或#Name

如何为文本框定义控件源?

1 个答案:

答案 0 :(得分:0)

定义一个getter函数,并使用它来显示变量。

定义吸气剂:

Public Function GetAnswer() As String
    GetAnswer = strAnswer
End Function

然后,作为文本框的控制源,使用=GetAnswer()显示答案。

请注意,如果答案更改为后续问题的答案,则可以考虑使其面向对象(定义一个类,并使Answer成为该类的属性),以避免奇怪的行为。您当前的设计仅适用于单个问答。