2016-04-07 19 views
1

到現在爲止,我手動在報告上創建了一個有限數量(12)的控件,並且我的代碼基本上根據用戶的選擇數量將它們打開或關閉(成功)。 現在我的客戶希望用戶對報表上的控件數量沒有「限制」。如何通過VBA在Access報表上創建控件?

我的策略是刪除控件,並通過代碼實時創建所需的數字。 但是,當我嘗試創建控件時,出現運行時錯誤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代碼將在由變量替換循環和幾何參數。)

我見過的所有討論涉及形式CreateControl Method的文件說,第一個參數是「名稱您想要創建控件的開放表單或報表「,因此它應該也適用於報表。 請注意,報告是在設計模式下打開的。任何想法我做錯了什麼?

+0

我很尷尬地說,所需的函數,'CreateReportControl()'是在我參考的頁面上提到的! –

回答

1

在線幫助/文檔很遺憾是錯誤的,或者至少有時會產生誤導。

爲此,有一個單獨的方法CreateReportControl()

相關問題