2014-06-16 89 views
1

我目前遇到一个奇怪的错误。我们开发了一种许多人使用的工具,其中之一在他获得新电脑后出现问题。 该宏打开位于网络上的PPT文件(用户可以访问演示文稿 - 我测试了这个文件)。从Excel中打开PowerPoint时的VBA运行时错误

下面是代码:

Dim ppapp As PowerPoint.Application 
Dim PPPres As PowerPoint.Presentation 
Dim MyPath 
MyPath = Workbooks("MyTool.xls").Sheets("Update").Range("start") 

Set ppapp = New PowerPoint.Application 
ppapp.WindowState = ppWindowMinimized 
ppapp.Visible = True 
Set PPPres = ppapp.Presentations.Open(MyPath, msoTrue, msoTrue) 

宏在这一行失败:

Set PPPres = ppapp.Presentations.Open(MyPath, msoTrue, msoTrue) 

运行时错误-2147467259(80004005):PowerPoint无法打开该文件 奇怪的是否适用于除一个用户以外的所有用户。 该平台是Win7和Excel 2010.

任何帮助非常感谢!

回答

1

对我的答案的免责声明以及有限的编程和VBA知识。我唯一的经验是通过excel和word。

这是办公室的excel参考库的问题吗?如果程序转到不同的系统,那么让代码延迟绑定而不是早期绑定可能会更好。

将Powerpoint应用程序和演示文稿作为对象进行调暗,并更改对其数值的引用。

Dim ppapp As Object 
Dim PPPres As Object 
Dim MyPath 
MyPath = Workbooks("MyTool.xls").Sheets("Update").Range("start") 

Set ppapp = New PowerPoint.Application 
ppapp.WindowState = 2 'this would have to be changed to the numerical code; ppWindowMinimized = 2 
ppapp.Visible = True 
Set PPPres = ppapp.Presentations.Open(MyPath, -1, -1) 'these would also may have to be changed, not sure though - -1 = msoTrue.