如何执行保存为变量VBA的代码行

问题描述 投票:0回答:1

我有一个名为Frm_Dairy的表单和一个名为Frm_Bakery的表单

我在每个中都有一个包含值的字段。每种形式的字段名称都相同,但是以字母名称开头是ether Dairy或Bakery。

示例:Frm_Dairy.Dairy_Sales或Frm_Bakery.Bakery_Sales

我想执行此代码:M_Sales = Frm_Dairy.Dairy_Sales

这很容易,但如果我希望程序首先确定哪种形式是活动的呢?

在这种情况下,M_Form =“Dairy”

因此,如果M_Form =“Dairy”,则代码为:M_Code =“M_Sales = Frm_”&M_Form&“。”和M_Form&“_销售”

现在我如何执行M_Code变量来获取存储在M_Sales中的数据

我希望我已经详细询问了这个问题并感谢您的帮助!

ms-access access-vba
1个回答
1
投票

要确定特定表单是否已打开,请考虑:

If CurrentProject.AllForms("Dairy").IsLoaded Then
...
ElseIf CurrentProject.AllForms("Bakery").IsLoaded Then
...
End If

您描述了需要引用字段,可能确实需要引用控件。

几种动态构造表单和控件引用的方法。一种是使用ActiveForm属性,假设您要寻址的表单具有焦点。

Debug.Print Screen.ActiveForm.Controls(Screen.ActiveForm.Name & "_Sales")

另一种方法是将表单名称作为过程的字符串参数传递。

Debug.Print Forms(strForm).Controls(strForm & "_Sales")

如果控件没有表单名称前缀会更简单。

© www.soinside.com 2019 - 2024. All rights reserved.