2014-10-07 120 views
2

我想要從Excel工作簿導入數據而不實際顯示打開的工作簿。使用互操作在後臺打開Excel工作簿

我可以發誓,我用下面的代碼在以前的項目和它的工作:

var excelApp = new Excel.Application { Visible = false }; 
var workbook = excelApp.Workbooks.Open(filePath); 

不幸的是,當工作簿打開它顯示這是不必要的這個應用程序的用戶。

我在此項目上使用Microsoft Excel 15.0對象庫時,以前我認爲它是版本12或13.也許這是問題,或者是我的內存褪色和代碼不正確?

+2

」不幸的是,當打開它顯示給用戶,這是不需要這個應用程序。「如果用戶不想看到它,爲什麼要爲用戶打開Excel?你試圖欺騙用戶的這種情況。 – Aron 2014-10-07 10:36:11

+1

@Aron我向你保證我不是。我正在寫一些分析Excel工作簿數據的東西。用戶將選擇工作簿的文件路徑,我的應用程序將解析所需的數據並添加到數據庫中。沒有邪惡的活動。 – 2014-10-07 10:39:55

+0

在這種情況下,您不應該運行Excel。請看看使用OpenXML。 – Aron 2014-10-07 10:41:10

回答

0

我知道這是舊的,但以防萬一有人仍然需要這個答案...

excelApp.Visible = false; 

(excelApp正在使用的Excel應用程序變量的名稱)的工作簿

+0

'Excel.Application {Visible = false};'和'excelApp.Visible = false;'有什麼區別? – Alex 2016-07-24 10:22:47

+0

這只是一個稱爲「對象初始值設定項」的快捷方式 – 2016-09-13 17:14:53

相關問題