我有一个Access报告,它有一个嵌套的子报告。在子报表中,有一个图表,我需要通过VBA引用它来调整轴。
我遇到的问题是子报表有多条记录,这些记录适合同一页面。我的VBA在主报表的详细信息部分的OnPrint事件中触发(这是包含图表的子报表所在的位置),并且似乎对图表的引用仅引用每个页面上的第一个图表。
我的代码如下:
If (Reports![Desired_Future_State Overview]![Desired_Future_State_Metric Programme Breakdown].Report![Walkup Chart].Object.Axes(2).MaximumScale) = 0 Then
Reports![Desired_Future_State Overview]![Desired_Future_State_Metric Programme Breakdown].Report![Walkup Chart].Object.Axes(2).ReversePlotOrder = True
End If
我无法在MS文档中看到有关如何使用此语法引用多个实例的任何信息 - 这是可能的,我将如何处理它?</ p>
答案 0 :(得分:0)
我通常做的是参考报告代码中的特定图表,在下面的示例中,我使用了报告的Detail_Format并引用了名为GraphName的图表
Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)
Dim objchart As Object
Dim objAxis As Object
Set objchart = Me!GraphName.Object
Set objAxis = objchart.Axes(2)
Dim Maxscale As Double
Dim MinScale As Double
Maxscale = Forms.MyForm.Maxscale
MinScale = Forms.MyForm.MinScale
objAxis.MaximumScale = Maxscale
objAxis.MinimumScale = MinScale
End Sub