VBA Code: Random Number Generator

Created: Wednesday, July 18, 2012, posted by at 8:09 am

Do you want a random number generator for your PowerPoint slide? Do you want some numbers from a chosen sequence of numbers to pop up every time you click? Yes, you can do this in PowerPoint using some simple VBA code, as Steve Rindsberg of PowerPoint FAQ explains.

First you need to know how you can run VBA scripts in PowerPoint. Then use this code. Explore the code a bit though since Steve has put in some helpful comments so that you can edit some values as required.

PowerPoint Random Number Generator

Sub UpdateRandomNumber(oSh As Shape)
Dim X as Long
'Make the shape’s text a random number
'X or less
'Change 12 below to any number you’d like:
X = 12
oSh.TextFrame.TextRange.Text = CStr(Random(X))
'Now force PPT to go to the slide again (ie, to redraw it) so that
'the changed text appears:
SlideShowWindows(1).View.GotoSlide (SlideShowWindows(1).View.Slide.SlideIndex)
End Sub
Function Random(High As Long) As Long
'Generates a random number less than or equal to
'the value passed in High
Random = Int((High * Rnd)  +1)
End Function

Once you have placed this code in the VBA editor, close the window to get back to your PowerPoint slides. Before you proceed further, it’s a great idea to save your file — be sure to save as a PowerPoint Macro-Enabled Presentation with the PPTM file extension or PowerPoint Macro-Enabled Show with the PPSM extension. If you save as any of the other file formats, PowerPoint will offer to remove the macros, and then of course the Random Number Generator will not work! See our PowerPoint File Formats page to learn about these file formats.

Select any text object such as a text box or even a shape that can fit in a number. Select the text object and format it so that it uses a font size and typeface that you want — you can make these choices even though there’s no actual text in the text object yet.

Now select the text object, and access the Insert tab of the Ribbon. Click the Action button to bring up the Action Settings dialog box. Make sure you are in the Mouse Click tab of this dialog box — now select the Run Macro radio button, and choose the UpdateRandomNumber macro. Click OK, and you are done.

Run the slide in Slide Show view, and click the text object to see a random number.

Random Number Generator 1963036_1920

Thank you so much, Steve.

We also wish to thank Dave Elton from Perambulum Ltd. for his help.

We tested this code using PowerPoint 2010 for Windows.

You May Also Like: Use VBA in PowerPoint, Even if You Can’t Program for Nuts | Create Spirographs in PowerPoint Programmatically | Resources on PowerPoint Programming and VBA

Steve RindsbergSteve Rindsberg has been associated with PowerPoint since the product originated more than two decades ago — his PowerPoint FAQ site is a treasure trove of PowerPoint information.

When he’s not updating his site, he’s working on his popular PPTools add-ins for PowerPoint. Steve’s also into a lot of print technology related stuff.

The views and opinions expressed in this blog post or content are those of the authors or the interviewees and do not necessarily reflect the official policy or position of any other agency, organization, employer, or company.

Related Posts

Filed Under: Programming
Tagged as: , , , ,

1 Comment

One response to “VBA Code: Random Number Generator”

  1. […] July 18, 2012 – VBA Code: Random Number Generator […]

Microsoft and the Office logo are trademarks or registered trademarks of Microsoft Corporation in the United States and/or other countries.

Plagiarism will be detected by Copyscape

© 2000-2024, Geetesh Bajaj - All rights reserved.

since November 02, 2000