2016-04-07 20 views
1

Şimdiye kadar, bir raporda sonlu bir sayı (12) denetimi el ile oluşturdum ve kodum, esas olarak, kullanıcının kaç tanesini seçtiğine bağlı olarak onları (başarılı bir şekilde) açıp kapattı. Artık, müşterim, kullanıcının rapordaki kontrol sayısı için "sınırsız" olmasını ister.VBA aracılığıyla bir Access raporunda nasıl kontrol oluşturabilirim?

Stratejim, denetimleri silmek ve gerekli sayıyı anında oluşturmak (kod aracılığıyla). Ancak, bir denetim oluşturmaya çalıştığımda, çalışma zamanı hatası 2450 "başvurulan formu bulamıyor" alıyorum. Pasajı:

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 

Yürütme CreateControl satırda durur: ... başvurulan formu 'My_report' bulamıyor. (Çalışırken, gerçek CreateControl kod değişkenler yerine bir döngü ve geometri parametreleri olacaktır.)

gördüğüm tüm tartışma formları ilgilidir ama CreateControl Method de belgeler ilk parametre arasında "adıdır diyor açık formu veya denetimi oluşturmak istediğiniz raporu "raporları da çalışmalıdır.Tasarım modunda numaralı numaralı raporun açık olduğunu unutmayın. Ne yaptığım hakkında bir fikrin var mı?

+0

Gerekli işlevin, 'CreateReportControl() 'işlevinin, sayfa i referansında belirtilen olduğunu söylemekten utanıyorum! –

cevap

1

Çevrimiçi yardım/belgeler, maalesef bazen yanlış ya da en azından yanıltıcı olabilir. Bunun için ayrı bir CreateReportControl() yöntemi vardır.

İlgili konular