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

PPTools

Image Export converts PowerPoint slides to high-quality images.

PPT2HTML exports HTML even from PowerPoint 2010 and 2013, gives you full control of PowerPoint HTML output, helps meet Section 508 accessibility requirements

Merge Excel data into PowerPoint presentations to create certificates, awards presentations, personalized presentations and more

Resize your presentations quickly and without distortion

Language Selector switches the text in your presentation from one language to another

FixLinks prevents broken links when you distribute PowerPoint presentations

Shape Styles brings styles to PowerPoint. Apply complex formatting with a single click.

Prep4PDF preserves interactivity in PowerPoint presentations when you convert to PDF

Keep Score with Static Variables

Problem

You need to maintain a score or count using VBA in your PowerPoint presentation but you don't want to put an instance of the necessary code in the macro you run when each shape is clicked.

Solution

Use a single function with a Static variable to maintain the score. Call the function from any other code when you want to add to, subtract from or reset the score.

Sub ChangeScoreExample()
' The AddToScore function does the real work
' This is an example of how you'd call the function:

    ' Optionally, reset the score to 0
    AddToScore(0)

    ' Add 20 to the score and display the new score    
    MsgBox "Your score is now " & CStr(AddToScore(20))

End Sub

Function AddToScore(iIncrement As Integer) As Integer
'  Maintains current score as a Static variable
'  Changes the score by iIncrement or resets it to 0 if iIcrement - 0
'  Returns the new score to the calling routine

    Static iScore As Integer

    ' provide a way to reset the score mid-run if need be
    If iIncrement = 0 Then
        iScore = 0
    Else    ' note that you can pass a negative score as well
        iScore = iScore + iIncrement
    End If

    AddToScore = iScore

End Function

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

Search terms:score,static,count


Did this solve your problem? If so, please consider supporting the PPT FAQ with a small PayPal donation.
Page copy protected against web site content infringement by Copyscape Contents © 1995 - 2015 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

Keep Score with Static Variables
http://www.pptfaq.com/FAQ00583_Keep_Score_with_Static_Variables.htm
Last update 07 June, 2011
Created: