2010-10-29 121 views
0

我已經在我的機器(XP)中創建了Office Excel應用程序。並且我已經將該應用程序放置在Windows Server 2008中,並提供以下錯誤。Microsoft Office Excel無法訪問文件

的Microsoft Office Excel不能訪問文件 '\服務器\ Input.xls'。有幾種可能的原因:

  • 文件名或路徑不存在。
  • 該文件正在被另一個程序使用。
  • 您嘗試保存的工作簿與當前打開的工作簿具有相同的名稱。

客戶機和服務器系統安裝辦公室2007和加入參考microsoftexcellibrary 12.0

爲應用程序創建組件和從調用的形式的代碼。

+0

你檢查所有可能的原因是什麼?該檢查的結果是什麼? – 2010-10-29 09:09:51

+0

你必須比「windows服務器」更具體。而且,Excel電子表格不是獨立的應用程序。 「爲應用程序創建程序集並從窗體調用代碼」:此窗體和VB.Net exe如何與文件進行交互? Office VBA不是VB.Net。 VB.Net不是Excel。雖然它會很好,如果是的話。作爲一種解決方法,VBA總是可以訪問「Scripting.FileSystemObject」COM類。 – 2010-10-29 09:29:22

回答

0

我會確保沒有Excel的過程是在機器上運行,你運行該應用程序之前,應該覆蓋的最後一個點。

第一點看上去最有可能的問題,路徑看起來像一個局部路徑或不正確的UNC路徑。嘗試將電子表格的完整路徑'C:\ server \ input.xls'並查看是否有效。

要停止的中間點,在workbook.open命令,您可以指定打開爲只讀,這將確保應用程序能夠紅,即使它被另一個用戶鎖定打開該文件。

希望這有助於

+0

我在本地機器上測試過相同的應用程序。當我在服務器中放置相同的邏輯時,它會發生錯誤。 – Nag 2010-10-29 09:59:50

+0

這可能是服務器上的電子表格被其他人打開(因爲我不知道你的系統的佈局),所以它會適合你的本地版本,但在服務器上失敗。您也可以在本地系統上安裝與該exe相關的電子表格的其他版本,但該服務器上的相對路徑中沒有電子表格。 – DJIDave 2010-10-29 10:09:57

+0

我正在使用來自其他服務器的共享路徑。 – Nag 2010-10-29 10:16:31

2

我得到確切同樣的錯誤,但在我的情況,我想(從潮汐企業調度程序)所使用microsoft.interop.excel一個.NET應用程序運行。

,答案已經在計算器: [Microsoft Office Excel cannot access the file 'c:\inetpub\wwwroot\Timesheet\App_Data\Template.xlsx'

我會重新名單從該鏈接的步驟:

  1. 創建目錄「C:\ WINDOWS \ Syswow64資料\ CONFIG \ systemprofile \桌面」(64和Windows)或「C:\的Windows \ system32 \設置\ systemprofile \桌面」(對於32和Windows)

  2. 上桌面目錄

    設置完全控制權限以上(例如在Win7 & IIS 7個&用戶默認應用設置權限‘IIS程序池\默認應用’)

當然,如果你正在運行一個計劃任務,而不是Web應用程序,你需要確保你正在使用的服務帳戶具有文件夾的權限。

C:\test.xlsx 

當試圖保存到根目錄下,它似乎會導致問題:

0

我想保存時有同樣的錯誤。改變我的路徑:

C:\MyExcelTests\test.xlsx 

工作的罰款