アニメーションウィンドウで、ここの設定を忘れないように。
-------------------------------------------------------------------------------------------------Sub RandomSlideShow()
Dim totalSlides As Integer
Dim i As Integer, j As Integer
Dim temp As Integer
Dim slideArray() As Long ' SlideIDはLong型推奨
totalSlides = ActivePresentation.Slides.Count
ReDim slideArray(1 To totalSlides)
' スライドIDを配列に取得(インデックス順)
For i = 1 To totalSlides
slideArray(i) = ActivePresentation.Slides(i).SlideID
Next i
' シャッフル(フィッシャー・イェーツ)
Randomize
For i = totalSlides To 2 Step -1
j = Int(Rnd() * i) + 1
temp = slideArray(i)
slideArray(i) = slideArray(j)
slideArray(j) = temp
Next i
' カスタムスライドショーの設定名
Dim customName As String
customName = "RandomShow"
' 既存の同名設定があれば削除
On Error Resume Next
ActivePresentation.SlideShowSettings.NamedSlideShows(customName).Delete
On Error GoTo 0
' 配列からスライドIDのリストを作成してカスタムショーを追加
ActivePresentation.SlideShowSettings.NamedSlideShows.Add _
Name:=customName, SafeArrayOfSlideIDs:=slideArray
' スライドショーを開始
With ActivePresentation.SlideShowSettings
.RangeType = ppShowNamedSlideShow
.SlideShowName = customName
.Run
End With
End Sub

0 件のコメント:
コメントを投稿