Microsoft KB Archive/162555

From BetaArchive Wiki

Article ID: 162555

Article Last Modified on 10/11/2006



APPLIES TO

  • Microsoft PowerPoint 97 Standard Edition



This article was previously published under Q162555

SUMMARY

This article describes how to use the Microsoft Visual Basic for Applications Presentations.Open method. The Open method opens an existing Microsoft PowerPoint presentation.

MORE INFORMATION

Microsoft provides programming examples for illustration only, without warranty either expressed or implied. This includes, but is not limited to, the implied warranties of merchantability or fitness for a particular purpose. This article assumes that you are familiar with the programming language that is being demonstrated and with the tools that are used to create and to debug procedures. Microsoft support engineers can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific requirements.

Parameters

There are four parameters that you can use to control the behavior of the Open method:

   Name          Data Type    Required
   ----          ---------    --------
   FileName      String       Yes
   ReadOnly      Long         Optional
   Untitled      Long         Optional
   WithWindow    Long         Optional
                

FileName:

The FileName parameter is the path and name of the presentation you wish to open. The following Visual Basic example opens a file named test.ppt located in the C:\ root directory.

   Sub OpenPresentation()
      Presentations.Open "c:\test.ppt"
   End Sub
                    

ReadOnly:

The ReadOnly parameter is used to open a presentation as Read-Only. The following example opens a file named test.ppt as Read-Only.

   Sub OpenPresentationReadOnly()
      Presentations.Open "c:\test.ppt", msoTrue
   End Sub
                    

The parameter, msoTrue, tells PowerPoint to open the presentation ReadOnly. When test.ppt is open, the following text appears in the title bar:

[test.ppt[Read-Only]]


If you do not specify the msoTrue parameter, it is set to msoFalse (the default), and the presentation opens as read/write.

Untitled:

The Untitled parameter is used to create a copy of the presentation. The following example opens a copy of test.ppt.

   Sub OpenCopy()
      Presentations.Open "c:\test.ppt", Untitled:=msoTrue
   End Sub
                    

If you do not specify the msoTrue parameter, it is set to msoFalse (the default), and the file name only appears in the title bar:

[test.ppt]


WithWindow:

The WithWindow parameter open a presentation without making it visible. The following example opens test.ppt, does not show it, and then closes it.

   Sub OpenInvisible()

      Dim MyPres As Presentation

      Set MyPres = Presentations.Open("c:\test.ppt", _
                                       WithWindow:=msoFalse)

      ' Close the presentation.
      MyPres.Close

   End Sub
                    

NOTE: When you are finished with the invisible presentation, make sure you close the presentation.

If you do not specify the msoFalse parameter, it is set to msoTrue (the default).

This code example:

   Presentations.Open "c:\test.ppt", WithWindow:=msoTrue
                    

is equivalent to this code example:

   Presentations.Open "c:\test.ppt"
                    

Using the Return Value

The Open method returns a reference to a presentation object. Once you have the object reference, you can use it to access methods and properties of the presentation.

    Sub GetReturnValue()

      Dim MyPres As Presentation

      Set MyPres = Presentations.Open("c:\test.ppt")

      ' This counts the number of slides in test.ppt.
      MsgBox MyPres.Slides.Count

   End Sub

NOTE: To use the return value of a method, set the method to a variable and enclose the parameters in parentheses.

Error Trapping the Open Method

The following sample code demonstrates how you can trap errors that may occur when using the Open method:

    Sub ErrorTrapOpen()

      On Error Resume Next

      ' Clear all values in the Err object.
      Err.Clear

      Dim MyPres As Presentation

      Set MyPres = Presentations.Open("c:\file does not exist.ppt")

      ' If error occurred when opening the file, display the error message.
      If Err.Number <> 0 Then
         MsgBox Err.Description, vbCritical, "Error " & Err.Number
      End If

   End Sub
                

The On Error Resume Next statement allows the macro to continue to execute beginning with the statement that immediately follows the statement that generated the error. If you do not use the On Error Resume Next statement, you will receive a run-time error if the file cannot be opened and the macro halts. When a run-time error occurs, information about that error is stored in the Err object.

For more information about the Err object, search the Help Index for "Err," or ask the Microsoft PowerPoint 97 Office Assistant.

REFERENCES

For additional information about getting help with Visual Basic for Applications, please see the following article in the Microsoft Knowledge Base:

163435 VBA: Programming Resources for Visual Basic for Applications



Additional query words: 97 8.00 kbmacro kbpptvba ppt8 vba vbe 8.0 kbhowto

Keywords: kbcode kbdtacode kbhowto kbmacro kbprogramming KB162555