我花了幾個小時試圖來縮小錯誤發生在,它似乎一直掛時間最長的這個幻燈片。但之後,我偶然在另一張幻燈片上看到了同樣的錯誤。通用性是他們在幻燈片上都有不尋常的動畫。具體來說,在兩張幻燈片上,我都有一組形狀,並且該組使用「線條」動畫進行動畫,將一組形狀從一個點移到另一個點。
當我從這些幻燈片刪除的動畫,不再有用於oSld.Copy錯誤也不使用CTRL + C時。
我的解決方法(要在這個時間點已經工作)是我添加的代碼複製源幻燈片演示結束後刪除源幻燈片動畫。幸運的是,複製錯誤似乎只發生在嘗試複製具有複雜動畫的第二張幻燈片時,而不是在複製具有複雜動畫的第一張幻燈片後發生。因此,通過在複製幻燈片後刪除複雜動畫,動畫在演示文稿的末尾正確複製到幻燈片,但顯然從源幻燈片刪除動畫可防止複製下一個複雜動畫幻燈片時出現問題。
我修改後的代碼的PowerPoint鍊金術的約翰·威爾遜刪除動畫如下:
Sub DeleteAnimations()
Dim i As Integer
Dim t As Integer
Dim osld As Slide
'delete anims from just the current slide
Set osld = ActivePresentation.Slides(ActivePresentation.SlideShowWindow.View.CurrentShowPosition)
'Remove normal animations
For i = osld.TimeLine.MainSequence.Count To 1 Step -1
osld.TimeLine.MainSequence(i).Delete
Next i
'Remove triggers
For i = osld.TimeLine.InteractiveSequences.Count To 1 Step -1
For t = osld.TimeLine.InteractiveSequences(i).Count To 1 Step -1
osld.TimeLine.InteractiveSequences(i).Item(t).Delete
Next t
Next i
End Sub
我拉我的頭髮試圖擺脫錯誤的,並因爲我花了這麼長的時間算起來我希望在這裏發佈這些信息可以幫助其他人。
來源
2015-11-19 20:03:49
DRC
高興你們覺得這個棘手的bug解決方法。但是,是否有某些原因可導致您無法收集數組中不正確答案的幻燈片索引號,然後稍後將用戶發送到數組中的每張幻燈片,或將未正確應答的幻燈片添加到您發送的自定義演出用戶?這將是一個重量輕,並會避開復制幻燈片的需要。史蒂夫好想法, –
。直到出現這個錯誤,只是將幻燈片複製到最後纔是非常容易的(當然,這對於CPU來說是更多的工作)。當然可以創建一個數組 - 我沒有考慮過的解決方法。我確實想要跟蹤用戶錯誤兩次的幻燈片,並通過將幻燈片複製到最後的方法輕鬆完成幻燈片,但也可以使用陣列完成。創建一個單獨的節目並不適合我的需求,因爲我需要在完成標準幻燈片和重複幻燈片後,在節目結束時總結其整體表現。 – DRC
「創建一個單獨的節目不適合我的需求,因爲我需要在完成標準幻燈片和重複幻燈片後,在節目結束時總結其整體表現。」我不是在建議一個單獨的節目;自定義節目是大型節目中的一組選定幻燈片;這是一個內置的PPT功能。看看幻燈片放映|自定義幻燈片。在這種情況下可能有用。 –