我想用C#(VS2010 professional)代碼打開一個excel文件(.xlsx)。當執行/單步執行下面代碼的最後兩行時,我得到一個(不可追蹤的,對我來說)異常。下面提到的是我打開一個現有的Excel文件的代碼。從C#.Net(VS2010)打開Excel文件錯誤
string tesfile = "C:\\Users\\AWaheed3\\Desktop\\1.xlsx";
Microsoft.Office.Interop.Excel.Application xlApp;
Microsoft.Office.Interop.Excel.Workbook xlWorkBook;
object misValue = System.Reflection.Missing.Value;
xlApp = new Microsoft.Office.Interop.Excel.Application();
xlApp.Visible = true;
xlWorkBook = xlApp.Workbooks.Open(tesfile, misValue, misValue, misValue, misValue, misValue, misValue, misValue, misValue, misValue, misValue, misValue, misValue, misValue, misValue);
此外,我在代碼的開始處包含了下面這行代碼。進一步我已經添加了從的Microsoft.Office.Interop.Excel的工程 - 參考>添加引用(.NET選項卡)
using Microsoft.Office.Interop.Excel;
任何人都可以提出建議,爲什麼我的代碼失敗/拋出一個錯誤?
問候 阿薩德
EDITED * * ** * ** * ** * ** * ** * ** * ** * ** * *
這是我收到的信息/錯誤。請注意,即使在執行xlApp.Visible = ture行時,代碼仍然失敗。錯誤是
無法將'Microsoft.Office.Interop.Excel.ApplicationClass'類型的COM對象轉換爲接口類型'Microsoft.Office.Interop.Excel._Application'。此操作失敗,因爲IID爲「{000208D5-0000-0000-C000-000000000046}」的接口的COM組件上的QueryInterface調用由於以下錯誤而失敗:庫未註冊。 (來自HRESULT的異常:0x8002801D(TYPE_E_LIBNOTREGISTERED))。
是否在運行此代碼的機器上安裝了MS Excel? – Andrei
是的,它被安裝在同一臺機器上 –
您是否真的需要使用Excel?也許一個託管的Excel庫是一個更好的選擇。 –