gpt4 book ai didi

ms-access - 引用全局变量 - MS Access

转载 作者:行者123 更新时间:2023-12-04 06:49:59 29 4
gpt4 key购买 nike

我试图将全局变量的名称传递给子例程,并想知道如何引用它。例如,我可以使用控件执行以下操作:

Private Sub passCtrlName(ctlName as String)
Me.Controls(ctlName) = "Whatever"
End Sub

编辑:

例如
Public imGlobVar As String
Public Sub passGlobVar(frm as Form, ctlName as String, globVar as String)
frm.Controls(ctlName) = globVar
End sub

并将其称为
私有(private)子 imaButton_Click()
imGlobVar = "某事"
调用 passGlobVar(Me , txtBox1, imGlobVar)
结束子

第二次编辑:

看来我肯定是在这里吠错了树,所以我将解释我想要实现的目标。

我有一个表单,其中包含用户(风险)地址的文本框,顶部有一个复选框,允许用户选择该地址与系统上已有的“联系人”详细信息相同,并且文本框被锁定。

填充文本框很好并且有效。我使用全局变量的目的是为了提高可用性(尽管有一点点)。
用户可以添加新的详细信息,如果他们点击复选框“与联系人相同”,他们输入的详细信息将存储在全局变量中,每个控件一个。

如果用户打错了复选框,他们并没有丢失这些值,并且通过取消选中该框,输入的值被返回。
我希望创建一个子例程,我可以在其中传递全局变量和控件的名称并调用该例程,而不是为每个控件写出来。

我有一种感觉,我可能使用了错误的技术来实现我的目标。但是在回答我最初的问题时,您似乎无法以我希望的方式将全局变量传递给子例程。

最佳答案

您不需要传递全局变量,您可以简单地通过名称引用它们。请注意,如果发生未处理的错误,则会重置全局变量。

http://msdn.microsoft.com/en-us/library/dd897495(office.12).aspx您将找到有关变量和常量的范围和生命周期的部分。

在一个模块中:

Option Explicit 
Public glbVarName As String
Const MyConstant=123

Sub InitVar
glbVarName="Something"
End Sub

任何其他模块,包括表单的类模块:
Sub SomeSub
MsgBox glbVarName
SomeVar=2+MyConstant
End Sub

关于ms-access - 引用全局变量 - MS Access,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3266584/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com