How to make Number Points Counter Scoreboard in PowerPoint using VBA

❎ No animations! We are going to code the scoreboard counter in PowerPoint!

How to Make a Countdown Timer in PowerPoint without Animations

Did you know that we can make interactive PowerPoint Presentations where we can have scoreboards and keep points? In this tutorial, I'll be showing you how we can make scoreboards in PowerPoint using VBA Codes in less than four minutes. 

A free template is also available. We can also make Multiple Points Counter Scoreboards in PowerPoint which can also be embedded in PowerPoint Games such as Jeopardy.

PPT-Counter
Total Time Needed: 5 minutes

Softwares:

- Microsoft PowerPoint
- Hyperlinks

Features:

- Sound Effects

Here is how we create an Interactive PowerPoint Quiz Game:

Step 1: Insert Counter

Windows: Office 2010 and above: File | Options | Customise Ribbon | ☑ Developer
Under the Developer Tab, select the Label ActiveX Element and insert it on the slide. Select the Label, click on Properties. Change its name to counter and the caption to 0.

Step 2: Insert Shapes

Insert two triangle shapes below the counter.

Step 3: VBA Macro Code

Double click the Counter ActiveX Element to open the Visual Basic Editor. Copy and paste the following VBA Macro Code:

				
					Sub PlusOne ()
counter.Caption = (counter.Caption) + 1
End Sub

Sub MinusOne ()
counter.Caption = (counter.Caption) - 1
End Sub

Sub ExitAndReset()
counter.Caption = 0
ActivePresentation.SlideShowWindow.View.Exit
End Sub 
				
			

We need to run the above VBA Macro codes when we click on the triangle shapes in Slide Show Mode. To do this, select the shape, go to Insert | Actions | Run Macro | PlusOne (or) MinusOne

Now, go to Slide Show | From Beginning and click the shape, you will see that the code is triggered on the click of the triangle buttons and the counter increases or decreases by 1. You can also customise the counter’s colours and fonts.

How to create a Points Counter in PowerPoint?

We will be making a number counter in Microsoft PowerPoint which will be controlled by two buttons, one increases the value by 1 and the other decreases it by 1.

The following PowerPoint video tutorial describes the quick process of creating an interactive counter in PowerPoint and explains the VBA Code. We also add a button to reset the counter and exit Slide Show Mode.

Using VBA in PowePoint allows us to expand our scope. We can do a lot of interesting interactive activities from creating a football scoreboard to keeping scores for a PowerPoint Quiz Game across multiple slides. Following are a few popular requests and their corresponding VBA Codes.

Arrow Keys to Control Counter

The following VBA Code allows us to control the Label ActiveX Element’s caption through the arrow keys of our keyboard. In this tutorial, we shall be using the left arrow key to decrease the counter and the right arrow key to increase the counter.

We would need to use ActiveX Element Command Button to make this possible. If you want to find out more key-constants of VBA, you can click here.

				
					Private Sub CommandButton1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)

If (KeyCode = vbKeyRight) Then
Counter.Caption = (Counter.Caption) + 1
End If

If (KeyCode = vbKeyLeft) Then
Counter.Caption = (Counter.Caption) - 1
End If

End Sub  
				
			

Multiple Counters - Scoreboard

We will be making a multiple points counter scoreboard in PowerPoint. In this tutorial, we shall be having three labels and three buttons for each to control the points.

  1. Go to Insert | SmartArt and add a SmartArt which can be used for your PowerPoint Scoreboard. You can customize the design and the number of columns and rows. Remember to adjust the number of labels and shapes to be inserted accordingly.
  2. Add 3 labels from the Developer Tab and insert the corresponding shapes that will run macros to increase or decrease the counter.
  3. Write macros for each Label in the Visual Basic Editor and insert the suitable macro to the corresponding shape,
				
					Sub Label1Plus2()
Label1.Caption = (Label1.Caption) + 2
End Sub
Sub Label1Plus1()
Label1.Caption = (Label1.Caption) + 1
End Sub
Sub Label1Minus1()
Label1.Caption = (Label1.Caption) - 1
End Sub
Sub Label1Reset()
Label1.Caption = 0
End Sub

'similarly make for Label2, Label3

Sub ExitPPT()
ActivePresentation.SlideShowWindow.View.Exit
End Sub

Sub Reset()
Label1.Caption = 0
Label2.Caption = 0
Label3.Caption = 0
End Sub 
				
			

Scoreboard Across Multiple Slides

We can easily add multiple scoreboard counters in all the selected slides of our PowerPoint Presentation and have the same values be present throughout our slide show mode. If you increase a label in Slide 1, the same change will be seen in Slide 2 too!

We use the same basic concept of increase the caption of a label (ActiveX component) but we place it in a slide-master. This allows for the same label to be present in all the PPT slides and allows for easy integration!

Insert the Labels in a Slide Layout inside the Slide Master. We need to have only one set of Labels. Do not have different Labels for all your different slides. That will cause lots of confusion and if their names overlap, it will cause your Macros to fail.

Double click the ActiveX Label to access the Visual Basic Applications Window. You’ll be within the Slide-Master in which the Label is present. Your code must also be within the same Slide-Master for the macros to run and change the caption of Labels which are also present within that slide-master.

Scoreboard in MacOS

Office for Mac doesn’t support ActiveX Element such as Labels. However, we used ActiveX Labels to make the Points Counter in Windows. So, how can we possible create a Scoreboard in PowerPoint for Mac? We are going to use good-old shapes and integers.

  1. Insert a shape named “counter” in Slide 1.
  2. Type “0” within the shape.
  3. We shall be using the following VBA code to increase the counter by 1.
  4. Add another shape and run the macro AddOne when it is clicked (Select the Shape > Insert > Action > Mouse Click > Run Macro > AddOne)
				
					Sub AddOne()
Dim counter as TextRange
Set counter = ActivePresentation.Slides(1).Shapes("counter").TextFrame.TextRange
counter = Int(counter) + 1
End Sub
				
			

🎯 In this tutorial