巧用vba在ppt中靈活切換幻燈片

  做了個演示文稿,中間做了一張幻燈片,用來播放一段電影。這個電影需要在好幾個幻燈片中都要展示引用,又不想多做幾張這個電影的幻燈片,就開始想能不能用這個一張幻燈片來解決所有問題呢?如果用ppt中默認的幾種超級鏈接方式,都達不到預定的效果,那就是電影播放後,點一下這張幻燈片上唯一的一個按鈕必須返回剛才的幻燈片。我也看到了,很多人在設計時,為了解決這個問題,在有電影的幻燈片下,竟然設置了多個按鈕,以返回不同的上一個幻燈片。我通過研究,終於發現,用vba可以輕鬆解決這個問題,即使是50張幻燈片都來引用也沒有問題。

放上製作好的圖片:

巧用vba在ppt中靈活切換幻燈片

步驟:1.製作好,多次引用的那張幻燈片。(我的是放電影的那張,就是第13張幻燈片)記住這張幻燈片的序號,在普通視圖下看,即上圖左邊圖圈1那部分序號。

2.利用控件箱,在這張幻燈片上放一個按鈕,雙擊這個按鈕,進入vba代碼編輯窗口,把下面這段代碼黏入其中:

Private Sub CommandButton1_Click()

SlideShowWindows(1).View.GotoSlide m

End Sub

也就是上圖中的3部分。這段代碼的意思就是單擊按鈕時,切換到第m張幻燈片。m的值在其他引用的按鈕中設置。

3.通過控件箱,分別在另外幾張你需要引用這個電影的幻燈片上,插入按鈕。並雙擊按鈕進入vba代碼編輯窗口,給每個按鈕分別寫入代碼。當然你可以把下面的代碼黏入即可。

Private Sub CommandButton1_Click()

SlideShowWindows(1).View.GotoSlide 13

m = 5

End Sub

這段代碼的意思就是單擊按鈕時,切換到第13張幻燈片,同時m設置為5。第13張幻燈片就是我的有電影的那張。

在每個按鈕的代碼中,你需要改變的只是m後的數字。如何改動呢?很容易,這個按鈕在第幾張幻燈片上,這個數字就設置為幾(這個數字在普通視圖下很容易看到,如圈1中的數字)。目的是讓放置電影的那個多次引用的幻燈片,一會能通過這個數字返回來。

另一個按鈕的代碼:

Private Sub CommandButton1_Click()

SlideShowWindows(1).View.GotoSlide 13

m = 8

End Sub

4.插入一個類模塊,在裡面聲明一個公共變量m,可以在各段代碼中引用這個變量。

即上圖中標6的地方。

你可以把下面這段代碼復制使用。

Public m As Integer

好了,下面你就可以放映你的演示文稿了,盡情切換吧!好爽!哦,對了,為了不影響最後的美觀,你可以把這個公共引用的幻燈片設置為隱藏。

當然,如果你不想用vba來操作,也可以在多次引用的這張幻燈片上,放一個圖形,然後通過「動作」設置,來鏈接到「最近的幻燈片」上,就可以了。