因此,我已将我们的应用程序从“ mbd”更改为“ accdb”,并且某些声明无法按应有的方式工作。
这行代码适用于'mbd'文件,但不适用于'accdb'
Dim subformachart As Form
Set subformachart = Form![subChart].Form!subChartSpace.Form
其中:
这是我在研究了一些文档之后尝试过的方法,但是它没有用(文档总是在谈论控件和其他专有属性,但从未涉及.Form专有属性
Dim subformachart As Form
Set subformachart = Me!subChart.Form!subChartSpace.Form
This doesn't work.
此外,如果我只想访问
中的第一个子表单,Set subformachart = Me!subChart.Form
它工作得很好,但是我找不到像mbd示例中那样访问第二个子窗体的方法。
答案 0 :(得分:0)
也许您将subform control name
和form name
混合使用,或者代码范围有问题吗?
我测试了以下星座:
frmMain
包含一个名为subChart
的子表单控件,该子控件包含一个名为frmSub
的表单。frmSub
包含一个名为subChartSpace
的子表单控件,该子控件包含一个名为frmSubSub
的表单。frmSubSub
的子子表单。放置在onclick
上按钮的frmMain
过程中的以下代码执行良好:
'Using Me:
MsgBox Me.subChart.Form.subChartSpace.Form.Name
'Using Form:
MsgBox Form.subChart.Form.subChartSpace.Form.Name
'Set the form in a local variable, using your syntax example:
Dim subformachart As Form
Set subformachart = Form![subChart].Form!subChartSpace.Form
MsgBox subformachart.Name
如果您是从主表单之外调用代码,可以说是从标准模块中说出来,那么您必须先使用forms
集合来引用主表单:
MsgBox Forms("frmMain").subChart.Form.subChartSpace.Form.Name
我看不到任何其他原因导致您的问题。