PowerPoint: Is it possible to have a 5 minute presentation where slides count down the time left, but displays the same text field on all 300+ slides?


Board Regular
May 6, 2013
I am a school teacher, and each class I open up with a focus question displayed on the SmartBoard where students are supposed to answer the question in their notebook. They have 5 minutes after the Tardy Bell to complete their answers.

I'd like to create a presentation that counts down in text how many minutes and seconds they have left to complete the assignment at the bottom of the screen. From asking elsewhere I'm told that I have to create a single slide/second for a total of 300+ screens, and have them each advance to the next slide in the sequence after 1 second.

Here's what I'm talking about:

Is there a way to do that and only have to write the question only once instead of on 300+ cards?


Well-known Member
Mar 11, 2015
Office Version
Test this in a new presentation
- only ONE slide is required :)

1. add "clock" shape
- click on 1st slide \ click on Insert tab \ Shape \ Rectangle and add the shape anywhere on the slide
2. rename rectangle shape
- click on Format tab \ click Selection Menu
- in selection pane click on box containing Rectange's name and amend the name to "Clock"
3. add the code
- go to VBA window with {ALT}{F11}
- Insert a new Module with {Alt} I M
- paste the code into that module
- return to PowerPoint with {ALT}{F11}
4. start the slideshow
- play from current slide
- do not cancel the slideshow until the timer finishes :eek:
5. amend to suit
- after testing amend everything to suit your needs
- when testing 10 seconds is long enough but after testing amend value of c to 300 (ie 300 seconds = 5 minutes)
- you may prefer a different shape etc

Sub OnSlideShowPageChange()
End Sub

Public Sub TenNineEight()
    Dim t As Date, c As Long, shp As Shape
    Set shp = ActivePresentation.Slides(1).Shapes("Clock")
    t = Now: c = [B]10[/B]
    t = DateAdd("s", c, t)
    Do Until t = Now
        shp.TextFrame.TextRange.Text = Format((t - Now), "hh:mm:ss")
End Sub
Last edited:

Forum statistics

Latest member

Some videos you may like

This Week's Hot Topics

  • populate from drop list with multiple tables
    Hi All, i have a drop list that displays data, what i want is when i select one of those from the list to populate text from different tables on...
  • Find list of words from sheet2 in sheet1 before a comma and extract text vba
    Hi Friends, Trying to find the solution on my task. But did not find suitable one to the need. Here is my query and sample file with details...
  • Dynamic Formula entry - VBA code sought
    Hello, really hope one of you experts can help with this - i've spent hours on this and getting no-where. .I have a set of data (more rows than...
  • Listbox Header
    Have a named range called "AccidentsHeader" Within my code I have: [CODE]Private Sub CommandButton1_Click() ListBox1.RowSource =...
  • Complex Heat Map using conditional formatting
    Good day excel world. I have a concern. Below link have a list of countries that carries each country unique data. [URL...
  • Conditional formatting
    Hi good morning, hope you can help me please, I have cells P4:P54 and if this cell is equal to 1 then i want row O to say "Fully Utilised" and to...