Stuart McLachlan
stuart at lexacorp.com.pg
Tue Apr 17 21:35:12 CDT 2012
I never use a Default Form any more. I use a one line AutoExec Macro which executes a Function called Startup(). That way you can do any initialisation required and open number of forms/reports in any order you want. -- Stuart On 17 Apr 2012 at 22:19, William Benson (VBACreations. wrote: > Why not use an Autoexec macro to run the report? > > If you must run a form for some other reason (can't see why, but if...) you > could still use a autoexec which calls a function (RunCode()) which opens > that form acformhidden). But at the end of the day it is a unneeded > intermediary step (and you're left with a hidden form open to no one's > benefit, right?) , so just open the report using the function that the > autoexec calls via runcode. > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Brad Marks > Sent: Tuesday, April 17, 2012 9:45 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] How to Show a Specific Report at Initiation Time(When > there is also a default form) > > Joe, > > Thanks for the help, I appreciate it. > > The situation that I am dealing with is quite simple, but a little > different. > > To isolate the problem, I set up a small Access application that has only > one form and one report. The form is not a popup form. > > The form is designated as the default "Display" form that is automatically > opened at startup time. > > The form opens the report on the form's "On Load" event (This works nicely) > > I then tried to make the form not visible via the Report's Load Event (I > tried the Report's Open event also) > > For some reason the code "Forms.form1.Visible = False" does not work. > > I must be missing something. > > Thanks, > > Brad > > > > > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com on behalf of Joe O'Connell > Sent: Tue 4/17/2012 7:39 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] How to Show a Specific Report at Initiation > Time(Whenthere is also a default form) > > Brad, > > It sounds like you have a popup form that opens a report, so the report > "sits behind" the form. If there is only 1 form and 1 report, then when > the report opens have it hide the form and then unhide it when the > report is closed. However sometimes there can be multiple forms open > that could open multiple reports in any sequence, then you need a more > generic solution to hide all popup forms when the first report opens and > to unhide all forms when the last report closes. Here are 2 subroutines > that are easily invoked to hide and unhide all popup forms. > > Put this in a new module: > > Option Compare Database > Option Explicit > Dim i As Integer, intNum As Integer, intNumOpenReport As Integer > Dim strPopupForm() As String > Const conObjStateClosed = 0 > > Public Sub HidePopupForms() > On Error Resume Next > If intNumOpenReport = 0 Then > intNum = 0 > For i = 0 To Forms.Count - 1 > If Forms(i).PopUp = True And Forms(i).Visible = True Then > Forms(i).Visible = False > intNum = intNum + 1 > ReDim Preserve strPopupForm(intNum) > strPopupForm(intNum) = Forms(i).name > End If > Next i > End If > intNumOpenReport = intNumOpenReport + 1 > End Sub > > Public Sub RestorePopupForms() > On Error Resume Next > If intNumOpenReport = 1 Then > For i = 1 To intNum > Forms(strPopupForm(i)).Visible = True > Next i > ReDim strPopupForm(0) > End If > intNumOpenReport = intNumOpenReport - 1 > End Sub > > In the open procedure for each report Call HidePopupForms() and in the > close procedure for ach report Call RestorePopupForms() > > Joe O'Connell > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Brad Marks > Sent: Tuesday, April 17, 2012 7:59 AM > To: Access Developers discussion and problem solving > Subject: [AccessD] How to Show a Specific Report at Initiation Time > (Whenthere is also a default form) > > All, > > We have an Access 2007 application that is used by a number of people. > > The form that is automatically opened for this ap is a type of report > menu. > > Recently a key player has asked that when the application is opened, he > would like to see one report automatically shown on the screen (without > needing to push any button or select any tab). > > Is there a way to have a default form, and yet open a report and give it > the focus. > > I know how to discern the user-id, that it not a problem. > > The problem is that if I open up the report on the Form Load Event, the > report is opened, but only a tab is shown for the report, and the report > itself is not visible as it is covered by the default form. > > I thought that this would be easy to do . I must be missing something. > > Thanks, > Brad > > > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > This message has been scanned for viruses and > dangerous content by MailScanner, and is > believed to be clean. > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com >