Solved

Close all open reports

Posted on 2010-11-28
8
451 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
How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

 
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

IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

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…
Introduction When developing Access applications, often we need to know whether an object exists.  This article presents a quick and reliable routine to determine if an object exists without that object being opened. If you wanted to inspect/ite…
Learn how to number pages in an Access report over each group. Activate two pass printing by referencing the pages property: Add code to the Page Footers OnFormat event to capture the pages as there occur for each group. Use the pages property to …
Basics of query design. Shows you how to construct a simple query by adding tables, perform joins, defining output columns, perform sorting, and apply criteria.

708 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

17 Experts available now in Live!

Get 1:1 Help Now