Microsoft Office Excel无法访问该文件

时间:2010-10-29 08:35:25

标签: vb.net

我在我的机器(XP)中创建了Office Excel应用程序。我已将应用程序放在Windows Server 2008中,但出现以下错误。

Microsoft Office Excel无法访问文件'\ server \ Input.xls'。有几个可能的原因:

  • 文件名或路径不存在。
  • 该文件正由另一个程序使用。
  • 您尝试保存的工作簿与当前打开的工作簿具有相同的名称。

客户端和服务器系统都安装了office 2007并添加了参考microsoftexcellibrary 12.0

为应用程序创建程序集并从表单中调用代码。

2 个答案:

答案 0 :(得分:2)

我得到了完全相同的错误,尽管在我的情况下我试图运行(来自Tidal Enterprise Scheduler)一个使用microsoft.interop.excel的.NET应用程序。

答案已经在stackoverflow中了: [Microsoft Office Excel cannot access the file 'c:\inetpub\wwwroot\Timesheet\App_Data\Template.xlsx'

我将重新列出该链接中的步骤:

  1. 创建目录“C:\ Windows \ SysWOW64 \ config \ systemprofile \ Desktop”(对于64位Windows)或“C:\ Windows \ System32 \ config \ systemprofile \ Desktop”(对于32位Windows)< / p>

  2. 在上面的桌面目录上设置完全控制权限(例如,在Win7&amp; IIS 7&amp; DefaultAppPool中为用户“IIS AppPool \ DefaultAppPool”设置权限)

  3. 当然,如果您运行的是计划任务而不是WebApp,则需要确保您使用的服务帐户对该文件夹具有权限。

答案 1 :(得分:0)

在运行此应用程序之前,我会确保计算机上没有运行任何Excel进程,这应该涵盖最后一点。

第一点看起来是最可能的问题,路径看起来像是部分路径或不正确的UNC路径。尝试将完整路径放到电子表格“C:\ server \ input.xls”中,看看是否有效。

要停止中间点,可以在workbook.open命令中指定以只读方式打开,这将确保应用程序可以在文件被其他用户锁定打开时重置该文件。

希望这有帮助