Article ID: 129465
Article Last Modified on 1/19/2007
APPLIES TO
- Microsoft Access 2.0 Standard Edition
- Microsoft Access 95 Standard Edition
- Microsoft Access 97 Standard Edition
This article was previously published under Q129465
Moderate: Requires basic macro, coding, and interoperability skills.
SUMMARY
This article shows you how to use Visual Basic for Applications code to ensure that the RecordSource property of a linked subreport is set only the first time that the Open event of the subreport is triggered, and not when it is triggered thereafter.
You can set the RecordSource property of a subreport at run time only from the OnOpen property of the subreport. At all other times, this property cannot be modified (the property is read-only). But because a linked subreport triggers the Open event multiple times, you must ensure that the RecordSource property is set only once -- the first time that the Open event is triggered.
This article assumes that you are familiar with Visual Basic for Applications and with creating Microsoft Access applications using the programming tools provided with Microsoft Access. For more information about Visual Basic for Applications, please refer to your version of the "Building Applications with Microsoft Access" manual.
NOTE: Visual Basic for Applications is called Access Basic in Microsoft Access version 2.0. For more information about Access Basic, please refer to the "Building Applications" manual.
MORE INFORMATION
Use the following sample Visual Basic code in the OnOpen event procedure of a subreport to set the RecordSource property the first time that the Open event is triggered and not thereafter:
Static CallCount As Long If CallCount = 0 Then Me.RecordSource = "MyCustomRecordSource" CallCount=CallCount+1
The Visual Basic code checks the value of the static variable CallCount. If CallCount is zero, then this is the first time the Open event is triggered, so the code sets the RecordSource property. Subsequent calls to the Open event will have a value of CallCount greater than zero.
REFERENCES
For more information about setting report properties at run time, please see the following article in the Microsoft Knowledge Base:
114510 ACC: Limitations on Setting Report Properties at Run Time
Keywords: kbhowto kbprogramming kbusage KB129465