當你開啟一個內容龐大的簡報時,PowerPoint 可能會將文件分成部分文件。 這讓你能快速開啟、編輯和協作文件,而較大的媒體部分 (例如影片) 則會繼續在背景載入。 同樣地,由於媒體與文件其他部分分開處理,當媒體在協作時插入,協作會更順暢。
因為某些內容可以先延遲執行,有些動作必須等延後內容載入後才能執行。 此外,有些操作像是另存為新檔、匯出成影片等,必須等所有延遲內容都下載完才能生效。 如果你啟動這些操作,PowerPoint 會顯示 UI 告訴你下載進度,但程式化操作無法做到這點。 如果你在內容還在下載時嘗試用程式呼叫 API 執行動作,它會失敗。
Run-time error '-2147188128 (80048260)':
<object> (unknown member) : This method isn't supported until the presentation is fully downloaded. Visit this URL for more information: https://go.microsoft.com/fwlink/?linkid=2172228
了解完全下載的狀態
要判斷簡報是否完全程式化下載,您可以在呼叫受影響的 API 前查詢 Presentation.IsFullyDownloaded 屬性。
If ActivePresentation.IsFullyDownloaded Then
MsgBox "Presentation download is complete."
Else
MsgBox "PowerPoint is still downloading the presentation."
End If
錯誤處理
你也可以加入錯誤處理功能,捕捉失敗狀況,並在簡報完整下載後重試操作。 若錯誤值為 -2147188128 或 0x80048260,則操作失敗,因為呈現尚未完全下載。
請使用 錯誤號碼(Err.Number )作為鍵碼來識別這些失敗,如下範例所示。
Sub TestCopySlide()
On Error GoTo eh
ActivePresentation.Slides(1).Copy
Exit Sub
eh:
If Err.Number = -2147188128 Then
MsgBox "Cannot copy because the presentation is not fully downloaded."
Else
MsgBox "Failure is due to a reason other than incomplete download: " & Err.Description.
End If
Debug.Print Err.Number, Err.Description
End Sub
受影響的 API
以下是可能回傳錯誤代碼的受影響 OM API 呼叫列表:
支援和意見反應
有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應。