【问题标题】:How can I create a control on an Access report via VBA?如何通过 VBA 在 Access 报表上创建控件?
【发布时间】:2016-07-28 21:53:34
【问题描述】:

到目前为止,我在报表上手动创建了有限数量 (12) 个控件,而我的代码基本上根据用户选择的数量打开或关闭(成功)它们。 现在我的客户希望用户对报表上的控件数量“没有限制”。

我的策略是删除控件并动态创建所需的数字(通过代码)。 但是,当我尝试创建控件时,我收到运行时错误 2450“找不到引用的表单”。 片段:

    DoCmd.OpenReport "My_report", acViewDesign
    Dim ctl As Control
    Set ctl = CreateControl(FormName:="My_report", ControlType:=acTextBox, _
            Section:=acDetail, left:=2880, top:=0, width:=967, height:=312)
    ' ... here lies code that adjusts attributes of the controls
    DoCmd.OpenReport "My_report", acViewReport

CreateControl 行上执行停止:...找不到引用的表单“My_report”。 (工作时,实际的CreateControl代码会在循环中,几何参数被变量替换。)

我看到的所有讨论都与 forms 有关,但CreateControl Method 的文档说第一个参数是“您要在其上创建控件的打开表单或报告的名称”,所以它也应该适用于报告。 请注意,报告在设计模式下打开。知道我做错了什么吗?

【问题讨论】:

  • 在我参考的页面上提到了所需的功能,CreateReportControl(),我很尴尬!

标签: ms-access vba report ms-access-2010


【解决方案1】:

不幸的是,在线帮助/文档有时是错误的,或者至少有时会产生误导。

为此有一个单独的方法CreateReportControl()

【讨论】:

    猜你喜欢
    • 2018-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-26
    • 1970-01-01
    • 2016-07-03
    相关资源
    最近更新 更多