PPT2000: How to use the Presentations.Open Method

ID: q222758


The information in this article applies to:


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, including, but not limited to, the implied warranties of merchantability and/or fitness for a particular purpose. This article assumes that you are familiar with the programming language being demonstrated and the tools used to create and debug procedures. Microsoft Support professionals 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 needs. If you have limited programming experience, you may want to contact the Microsoft fee-based consulting line at (800) 936-5200. For more information about the support options available from Microsoft, please see the following page on the World Wide Web:

http://www.microsoft.com/support/supportnet/overview/overview.asp
NOTE: The following macro examples only work from within the PowerPoint application. Visual Basic for Applications macros are not supported by the Microsoft PowerPoint Viewer. For additional information, please see the following article in the Microsoft Knowledge Base:
Q230746 PPT: Viewer: Presentation Macros Don't Run

Parameters

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

Name

DataType

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 that you want 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 you use 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 starting with the statement that 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 quits. When a run-time error occurs, information about that error is stored in the Err object.

For more information about the Err object, ask the Microsoft PowerPoint Office Assistant.


REFERENCES

For more information about using the sample code in this article, please see the following article in the Microsoft Knowledge Base:

Q212536 OFF2000: How to Run Sample Code from Knowledge Base Articles

Additional query words: 9.00 ppt9 vba vbe ppt2k powerpt vba2k ppt9.0 ppt2000 program programming


Keywords          : kbcode kbmacro kbprg kbdta kbdtacode kbpptvba 
Version           : WINDOWS:2000
Platform          : WINDOWS 
Issue type        : kbhowto 

Last Reviewed: July 14, 1999