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的文件說,第一個參數是「名稱您想要創建控件的開放表單或報表「,因此它應該也適用於報表。 請注意,報告是在設計模式下打開的。任何想法我做錯了什麼?
我很尷尬地說,所需的函數,'CreateReportControl()'是在我參考的頁面上提到的! –