Aha. That makes perfect sense, and the coding shouldn't be too bad. In
fact, here is the main coding that you need. All you need to do is put 5
check boxes on slide number 2 (the menu slide) using the control toolbox.
Then you need six buttons: one on the menu slide and one at the end of
each "presentation." Note that I'm assuming that these "presentations"
are in the same slide show, but a little tweaking could easily work to
have them in different slide shows. If you use buttons from the control
menu, you will need to put GotoNext in the Click procedure for each
button. If you use AutoShapes, then you will need just need to set the
Action Settings for each button to run the macro GotoNext.
Also note the comments. I have assumed in GotoNext that each
"presentation is one slide long, but just changing the numbers after
GotoSlide to correspond to the first slide of each "presentation" will
work.
This was even easier than I thought and it took me longer to add comments
to the code and write this message than to actually write the code.
Let me know if you want me to email you my working sample.
Dim curPresentation As Long
Dim nextPresentation As Long
'Based on which checkboxes are checked on slide 2 and what the current
'"preseentation" is, decide what is the next presentation.
Sub WhatsNext()
If Slide2.CheckBox1.Value = msoTrue And curPresentation < 1 Then
nextPresentation = 1
ElseIf Slide2.CheckBox2.Value = msoTrue And curPresentation < 2 Then
nextPresentation = 2
ElseIf Slide2.CheckBox3.Value = msoTrue And curPresentation < 3 Then
nextPresentation = 3
ElseIf Slide2.CheckBox4.Value = msoTrue And curPresentation < 4 Then
nextPresentation = 4
ElseIf Slide2.CheckBox5.Value = msoTrue And curPresentation < 5 Then
nextPresentation = 5
Else
nextPresentation = 0
End If
End Sub
'This procedure actually goes to the appropriate slide. It should be tied
'to a button at the end of every "presentation."
Sub GotoNext()
WhatsNext 'decide what is next setting the value of nextPresentation
'This assumes that the menu is on slide 2 and that each
'"presentation" is
'on consecutive slides from 2 through 7. If that is not the case,
'just change the numbers after GotoSlide.
Select Case nextPresentation
Case 0
'return to the menu slide when all slides are done
ActivePresentation.SlideShowWindow.View.GotoSlide 2
Case 1
ActivePresentation.SlideShowWindow.View.GotoSlide 3
Case 2
ActivePresentation.SlideShowWindow.View.GotoSlide 4
Case 3
ActivePresentation.SlideShowWindow.View.GotoSlide 5
Case 4
ActivePresentation.SlideShowWindow.View.GotoSlide 6
Case 5
ActivePresentation.SlideShowWindow.View.GotoSlide 7
End Select
curPresentation = nextPresentation
End Sub
--
David M. Marcovitz
Microsoft PowerPoint MVP
Director of Graduate Programs in Educational Technology
Loyola College in Maryland
Author of _Powerful PowerPoint for Educators_
http://www.PowerfulPowerPoint.com/