Solved

Close all open reports

Posted on 2010-11-28
8
452 Views
Last Modified: 2012-05-10
I have this code that I have adapted from a post i found on here.
I want to close all open reports in the current database

The code is in the Timer event of a hidden form (frmRprtTimer) that opens when any report opens.

Option Compare Database
Option Explicit

Private Sub Form_Timer()
On Error GoTo Err_Form_Timer
Dim rpt As Report
Dim db As Database
Dim cont As Container
    Set db = CurrentDb()
    Set cont = db.Containers("Reports")
    For Each rpt In cont
        DoCmd.Close
    Next rpt
    DoCmd.Close acForm, "frmRprtTimer"
Exit_Form_Timer:
    Exit Sub
Err_Form_Timer:
    MsgBox Err.Description
    Resume Exit_Form_Timer
End Sub

I keep getting an error.
Can anyone help?
0
Comment
Question by:Stephen Byrom
  • 4
  • 4
8 Comments
 
LVL 65

Expert Comment

by:rockiroads
ID: 34226192
when you close the report via docmd.close you have to specify the type and report name (like your timer)
eg

docmd.close acreport, rpt.name
0
 
LVL 65

Accepted Solution

by:
rockiroads earned 250 total points
ID: 34226203
try this alternative


Private Sub Form_Timer()

    CloseAllReports

    DoCmd.Close acForm, "frmRprtTimer"

End Sub



Private Sub CloseAllReports()



    Dim i As Integer

    Dim sName As String

    

    For i = 0 To CurrentDb.Containers("Reports").Documents.count - 1

        sName = CurrentDb.Containers("Reports").Documents(i).Name

        Debug.Print "Closing", sName

        DoCmd.Close acReport, sName

    Next i

    

End Sub

Open in new window

0
 
LVL 1

Author Comment

by:Stephen Byrom
ID: 34226206
Tried that rocki.
I get
"Operation is not supported for this type of object"
0
 
LVL 1

Author Closing Comment

by:Stephen Byrom
ID: 34226218
Your alternative code worked great.
Thanx for the help.
Much appreciated
0
Ransomware-A Revenue Bonanza for Service Providers

Ransomware – malware that gets on your customers’ computers, encrypts their data, and extorts a hefty ransom for the decryption keys – is a surging new threat.  The purpose of this eBook is to educate the reader about ransomware attacks.

 
LVL 65

Expert Comment

by:rockiroads
ID: 34226227
no worries :)
0
 
LVL 1

Author Comment

by:Stephen Byrom
ID: 34226253
Getting answers and code from here has taught me a lot, and is much appreciated.
I have managed to build a decent Stock database with yours and other's help.
Is there a book or some other refernece that you would recommend that I could learn more about coding in VBA?
0
 
LVL 65

Expert Comment

by:rockiroads
ID: 34226318
I don't know of any books as my vba knowledge is all self taught. I did find one useful site for noobs though that you may find useful
http://functionx.com/vbaccess/index.htm
0
 
LVL 1

Author Comment

by:Stephen Byrom
ID: 34229359
Thanx Rocki.
Very usefull site.
0

Featured Post

U.S. Department of Agriculture and Acronis Access

With the new era of mobile computing, smartphones and tablets, wireless communications and cloud services, the USDA sought to take advantage of a mobilized workforce and the blurring lines between personal and corporate computing resources.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In Debugging – Part 1, you learned the basics of the debugging process. You learned how to avoid bugs, as well as how to utilize the Immediate window in the debugging process. This article takes things to the next level by showing you how you can us…
Overview: This article:       (a) explains one principle method to cross-reference invoice items in Quickbooks®       (b) explores the reasons one might need to cross-reference invoice items       (c) provides a sample process for creating a M…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…
In Microsoft Access, learn how to use Dlookup and other domain aggregate functions and one method of specifying a string value within a string. Specify the first argument, which is the expression to be returned: Specify the second argument, which …

920 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now