我正在构建一个Access报告(2010版),并希望能够根据用户在表单上的选择来自定义该报告。当我运行它时,出现错误2771:您尝试编辑的绑定或未绑定的对象框架不包含OLE对象。
这是传递参数的代码:
Private Sub Command120_Click()
DoCmd.OpenReport ReportName:="rpt_EODGraph", View:=acViewPreview, _
OpenArgs:=Me!Text0.Value
End Sub
这是打开报告的代码。
Private Sub Report_Open(Cancel As Integer)
Dim ch As Chart
Set ch = Me.Graph3.Object.Application.Chart 'This line generates the error
ch.ChartTitle.text = OpenArgs
End Sub
我发现至少有人说这实际上不可能在报告中完成。(http://www.access-programmers.co.uk/forums/showthread.php?t=177778&page=2请注意,这是一个两页的论坛讨论的第二页...)任何人都可以证实或反驳吗?
显然,在访问OLE对象之前,报表必须具有某种重点。如果您单击它或将焦点设置为某种东西就足够了:
Private Sub Report_Open(Cancel As Integer)
Dim ch As Object
Me.RandomButton.SetFocus
Set ch = Me.Diagramm11.Object
ch.ChartTitle.Text = "Hello"
End Sub
这有效。我只是在报表上设置了一个获得焦点的按钮。也许您发现更优雅的东西;)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句