Dim username As String Dim visited() As Boolean Dim numSlides As Long Dim numRead As Integer Dim numWanted As Integer Sub GetStarted() Initialize YourName RandomNext End Sub Sub Initialize() Randomize numWanted = 5 numRead = 0 numSlides = ActivePresentation.Slides.Count ReDim visited(numSlides) For i = 2 To numSlides - 1 visited(i) = False Next i End Sub Sub YourName() username = InputBox("What is your name?") End Sub Sub RightAnswer() DoingWell visited(ActivePresentation.SlideShowWindow.View.Slide.SlideIndex) = True numRead = numRead + 1 RandomNext End Sub Sub WrongAnswer() DoingPoorly End Sub Sub DoingWell() MsgBox ("Good job, " & username & ".") End Sub Sub DoingPoorly() MsgBox ("Try again, " & username & ".") End Sub Sub RandomNext() Dim nextSlide As Long If numRead >= numWanted Or numRead >= numSlides - 2 Then ActivePresentation.SlideShowWindow.View.Last Else nextSlide = Int((numSlides - 2) * Rnd + 2) While visited(nextSlide) = True nextSlide = Int((numSlides - 2) * Rnd + 2) Wend ActivePresentation.SlideShowWindow.View.GotoSlide (nextSlide) End If End Sub