簡體   English   中英

在 Windows 7 上打開 PowerPoint 演示文稿時 VBA 失敗

[英]VBA fails when opening PowerPoint presentation on Windows 7

我在 Windows XP 上的 Excel 2007 中編寫了一個 VBA 宏,用於將數據從 excel 電子表格復制到 PowerPoint 演示文稿中。 當這個啟用宏的電子表格在全新安裝的 Windows 7 上運行時,它會失敗。 因此,我提取了無法確定問題的代碼,並且在嘗試打開現有的 powerpoint 文件時似乎失敗了。 我已嘗試在 Office 2010 和 Office 2007 中運行此代碼。

我正在嘗試使用它的代碼(只是下面顯示的問題部分)

Sub test()
   Dim PowerPointApplication As PowerPoint.Application
   Dim PowerPointFile As PowerPoint.Presentation

   Set PowerPointApplication = CreateObject("PowerPoint.Application")
   Set PowerPointFile = PowerPointApplication.Presentations.Open("PATH_TO_FILE\test.pptx")
End Sub

宏在上面的 Presentations.Open 行上失敗,並出現以下錯誤

Run-time error '-2147467259 (80004005)':
Method 'Open' of object 'Presentations' failed

我已經在電子表格的 VBEditor 的引用設置中啟用了 PowerPoint 12.0 對象庫。 所有其他引用都與在我的 Windows XP 機器上運行且沒有錯誤的文件完全匹配。

我在網上到處尋找答案,但找不到任何東西。 我閱讀了一些有關 Windows 7 和脫機文件的信息,因此嘗試將其關閉,但沒有幫助。

我也以管理員用戶身份登錄,並嘗試將我正在打開的 pptx 也移動到其他目錄,但沒有成功。

我正在運行以下版本的 Windows:

Windows 7 Professional
Service Pack 1
64 Bit

任何幫助,將不勝感激!

PATH_TO_FILE 是變量(或常量)嗎?

如果是這樣不應該

PowerPointFile = PowerPointApplication.Presentations.Open(PATH_TO_FILE & "\test.pptx")

這確實適用於 Win7 SP1 64 位操作系統上的 office 2016

應該適用於 Office 2010。

也可能是約翰對文件路徑的建議。

Sub test()
Dim PowerPointFile As PowerPoint.Presentation
Dim PPTObj As Object
Set PPTObj = CreateObject("PowerPoint.application")

Set PowerPointFile = PPTObj.Presentations.Open("C:\test.pptx")

End Sub 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM