[英]Fade volume of background media on specific slide in PowerPoint using VBA
[英]Muting and Unmuting multiple audio media on one slide in Powerpoint using VBA
我在 Windows 10 上使用 PowerPoint 2016。幻燈片 A 有一個文本框和一個命令按鈕。 當命令按鈕被選中時,一個布爾gbool
被設置並且演示文稿前進到幻燈片 B。
ActivePresentation.SlideShowWindow.View.GotoSlide <slideB slideindex>
在幻燈片 B 上,有兩個音頻媒體對象,AM1 和 AM2。 我想要發生的是,如果gbool
為 True,那么 AM1 應該播放,否則 AM2 應該播放。 我已經使用靜音標志來嘗試這個:
Shape.MediaFormat.Muted = False
我的問題是,這有時有效,有時兩個音頻媒體都會播放。 代碼如下所示:
Private Sub CommandButton1_Click()
Dim osl As Slide, oSh As Shape, gbool As Boolean
gbool = function()
Set osl = ActivePresentation.Slides(<slideB slideindex>)
Set oSh = osl.Shapes("AM1")
oSh.MediaFormat.Muted = gbool
Set oSh = osl.Shapes("AM2")
oSh.MediaFormat.Muted = Not gbool
ActivePresentation.SlideShowWindow.View.GotoSlide <slideB slideindex>
End Sub
關於隨機行為的任何想法,有沒有更好的方法來做到這一點?
我想我有一個答案——至少這種方法一直有效。 我現在不使用 MediaFormat 對象的靜音屬性,而是使用播放設置對象的 PlayOnEntry 屬性。 所以變化看起來像這樣:
Set osl = ActivePresentation.Slides(<slideB slideindex>)
Set oSh = osl.Shapes("AM1")
oSh.AnimationSettings.PlaySettings.PlayOnEntry = gbool
Set oSh = osl.Shapes("AM2")
oSh.AnimationSettings.PlaySettings.PlayOnEntry = Not gbool
如果有更好的方法,我將不勝感激。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.