Supercharge your PowerPoint productivity with

Supercharge your PPT Productivity with PPTools - Click here to learn more.

Tell me about PPTools

Print just the current slide from Slide Show View


PPTools
Shape Styles brings the power of styles to PowerPoint. Apply complex formatting with a single click
Merge Excel, CSV or tab-delimited data into PowerPoint presentations to create certificates, awards presentations, personalized presentations and more
FixLinks prevents broken links when you distribute PowerPoint presentations
Optimizer saves disk space and bandwidth, shrinks your PowerPoint presentations to the right size for email, screenshow or printing
PPT2HTML gives you full control of PowerPoint HTML output, helps meet Section 508 accessibility requirements
Prep4PDF preserves interactivity in PowerPoint presentations when you convert to PDF
Image Export converts PowerPoint slides to JPG, PNG, GIF, WMF and more

Problem

You want to add a button to a slide or slides that will let anyone viewing the presentation print the current slide to the default printer.

Solution

Say "Thanks, Dennis, for asking the question that led to this" and read on:

  • Add the macro below to your presentation
  • Create a button on one of your slides
  • Rightclick and give it an Action Setting of Run Macro: PrintMe
  • Start the slide show and click the button

You can copy the button to any other slide in your presentation or to the Slide and/or Title master if you want it to appear on every slide in the presentation. The one macro is all you need.

Sub PrintMe()

    Dim lCurrentSlide as Long

    ' Get the SlideID of the slide currently in view
    lCurrentSlide = SlideShowWindows(1).View.Slide.SlideIndex

    ' Set up print options
    With ActivePresentation.PrintOptions

        ' Print a range that includes only the current slide
        .RangeType = ppPrintSlideRange
        With .Ranges
            .ClearAll
            .Add Start:=lCurrentSlide, End:=lCurrentSlide
        End With

        .NumberOfCopies = 1

         ' This prints notes pages;  change it to e.g. ppPrintOutputSlides to print slides
         ' To see the other types delete everything from the = sign to the end of the line below
         ' Then type = at the end of the line;  VBA's Intellisense feature will show you the available options
        .OutputType = ppPrintOutputNotesPages

        .PrintHiddenSlides = msoTrue

         ' Likewise, change this if you want color or pure b/w
        .PrintColorType = ppPrintBlackAndWhite

        .FitToPage = msoFalse
        .FrameSlides = msoFalse

    End With

    ' and PRINT
    ActivePresentation.PrintOut

End Sub

See How do I use VBA code in PowerPoint? to learn how to use this example code.


Page copy protected against web site content infringement by Copyscape Contents © 1995-2008 Stephen Rindsberg, Rindsberg Photography, Inc. and members of the MS PowerPoint MVP team. You may link to this page but any form of unauthorized reproduction of this page's contents is expressly forbidden.

Español    Deutsch    Français    Português    Italiano    Nederlands    Greek    Japanese    Korean    Chinese



Supercharge your PPT Productivity with PPTools


content authoring & site maintenance by
Friday, the automatic faq maker (logo)
Friday - The Automatic FAQ Maker

Print just the current slide from Slide Show View
http://www.pptfaq.com/FAQ00763.htm
Last update 09 September, 2006