我正在使用一个执行一些Excel自动化的Web应用程序(我知道 - 不是首选解决方案).
我使用Excel 2007作为我的开发平台,但目标服务器使用的是Excel 2003.尽管在开发期间我明确选择了Excel 11,但在尝试加载到目标服务器上的Excel 12互操作后遇到了很多麻烦,我已经求助于使用后期绑定而不是早期绑定.
这使我能够实现Excel的实例化(我可以看到Excel进程在目标服务器上的任务管理器中启动).
但是我无法调用后期绑定的Workbooks对象的Open方法.它向我抛出这个错误:
"Unable to get the Open property of the Workbooks class"
Run Code Online (Sandbox Code Playgroud)
我一直在尝试一些不同的东西,并尝试了以下内容:
在所有三种情况下,Excel自动化都成功.只有当我部署ASP.NET应用程序时,才会出现此错误.在一个非常简化的形式,代码类似于:
Dim xlApp As Object 'Excel.Application
Dim xlBook As Object ' Excel.Workbook
xlApp = CreateObject("Excel.Application") 'New Excel.Application
xlBook = xlApp.Workbooks.Open("somefile.xls", , True, , , , , , , , , , , , False)
Run Code Online (Sandbox Code Playgroud)
有没有人对可能发生的事情有任何想法?我检查了用户Excel进程启动的用户,并且它与我成功运行Windows Forms .NET应用程序的用户相同.我已经打开Excel作为此用户清除所有初始设置的东西.
小智 2
我遇到了同样的问题,我发现一些网站有以下内容:尝试转到文件 - 选项 - 加载项 - 在管理下拉列表中选择禁用的加载项 - 单击“转到” - 并启用其中的任何内容。
它对我不起作用,但可能对你有用。
| 归档时间: |
|
| 查看次数: |
7959 次 |
| 最近记录: |