CurrentProject Object Example

The following example prints some current property settings of the CurrentProject object and then sets an option to display hidden objects within the application:

Sub ApplicationInformation()
    ' Print name and type of current object.
    Debug.Print Application.CurrentProject.FullName
    Debug.Print Application.CurrentProject.ProjectType
    ' Set Hidden Objects option under Show on View Tab
    'of the Options dialog box.
    Application.SetOption "Show Hidden Objects", True
End Sub

The next example shows how to use the CurrentProject object using Automation from another Office application. First, from the other application, create a reference to Microsoft Access by clicking References on the Tools menu in the Module window. Select the check box next to Microsoft Access 9.0 Object Library. Then enter the following code in a Visual Basic module within that application and call the GetAccessData procedure.

The example passes a database name and report name to a procedure that creates a new instance of the Application class, opens the database, and verifies that the specified report exists using the CurrentProject object and AllReports collection.

Sub GetAccessData()
' Declare object variable in declarations section of a module
    Dim appAccess As Access.Application
    Dim strDB As String
    Dim strReportName As String

    strDB = "C:\Program Files\Microsoft "_
        & "Office\Office\Samples\Northwind.mdb"
    strReportName = InputBox("Enter name of report to be verified", _
        "Report Verification")
    VerifyAccessReport strDB, strReportName
End Sub

Sub VerifyAccessReport(strDB As String, _
     strReportName As String)
    ' Return reference to Microsoft Access 
    ' Application object.
    Set appAccess = New Access.Application
    ' Open database in Microsoft Access.
    appAccess.OpenCurrentDatabase strDB
    ' Verify report exists.
    On Error Goto ErrorHandler
    appAccess.CurrentProject.AllReports(strReportName)
    MsgBox "Report " & strReportName & _
        " verified within Northwind database."
    appAccess.CloseCurrentDatabase
    Set appAccess = Nothing
Exit Sub
ErrorHandler:
    MsgBox "Report " & strReportName & _
        " does not exist within Northwind database."
    appAccess.CloseCurrentDatabase
    Set appAccess = Nothing
End Sub