Microsoft KB Archive/166859

= PPT: Sample VB Code to Print Current Slide from Slide Show =

Article ID: 166859

Article Last Modified on 10/11/2006

-

APPLIES TO


 * Microsoft PowerPoint 98 for Macintosh
 * Microsoft PowerPoint 97 Standard Edition

-



This article was previously published under Q166859



SUMMARY
This article contains a sample Microsoft Visual Basic for Applications macro (Sub procedure) that prints the current slide in a running slide show.

When running a slide show, it may be desirable, especially if in kiosk mode, to be able to print the current slide in a running slideshow out to a printer. The following code allows you to do just that.

This macro code would be used with an action button, placed on the master slide, and attached to the action button via its action settings. Once on the master, it would be available for all slides, and it will print whichever slide is currently on display in the slideshow.



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.

Sample Visual Basic Procedure
' This code determines what slide is currently visible in the ' slide show and then it clears the print range and prints out the ' current slide. Sub PrintCurrentSlide

' Declare lSldNum as a long integer. Dim lSldNum As Long

' Assign lSldNum to the current slide number. lSldNum = SlideShowWindows(1).View.Slide.SlideNumber

' Set the print options for the active presentation. With ActivePresentation.PrintOptions

' Set RangeType to print a slide range. .RangeType = ppPrintSlideRange

' Delete old print range settings. .Ranges.ClearAll

' Set Ranges to the new range for the current slide. .Ranges.Add lSldNum, lSldNum End With

' Using the current print settings print the slide to the default ' printer. ActivePresentation.PrintOut End Sub

