我正在使用MS Access 2016.我想迭代报告中的控件。
Dim objrpt As AccessObject
Dim ctl As Control
Set objrpt = CurrentProject.AllReports("Quote")
Debug.Print objrpt.Name
For Each ctl In objrpt.Controls
Debug.Print ctl.Name
Next
但是,在第5行弹出错误" For each ctl in objrpt.Controls"
运行时错误" 438" object不支持此属性或方法。
赞赏是否有人可以对此有所了解。
答案 0 :(得分:2)
Access中有不同的报告集合。 AccessObject
下的CurrentProject.Reports
报告集主要用于导出。
您正在寻找包含当前打开报告的Application.Reports
集合:
Dim objrpt As Report
Dim ctl As Control
Set objrpt = Application.Reports("Quote")
Debug.Print objrpt.Name
For Each ctl In objrpt.Controls
Debug.Print ctl.Name
Next
请注意,为此,必须打开报告。