我需要manuplate excel工作表的工作簿(添加張/添加數據/ 隱藏列/保護細胞與密碼 /改變字段內容/等等等等)ASP.NET manuplating Excel表單
我應該使用微軟提供的COM對象(但是我認爲他們在asp.NET中使用的問題很少)
或者是否有一個很好的(commurcial或free)庫/插件用於執行此類活動。
請幫助
我需要manuplate excel工作表的工作簿(添加張/添加數據/ 隱藏列/保護細胞與密碼 /改變字段內容/等等等等)ASP.NET manuplating Excel表單
我應該使用微軟提供的COM對象(但是我認爲他們在asp.NET中使用的問題很少)
或者是否有一個很好的(commurcial或free)庫/插件用於執行此類活動。
請幫助
試試算表齒輪第三方組件
我發現的最簡單的方法是使用Excel XML format。這樣,您可以像編輯任何其他XML文件一樣編輯Excel工作表。要查看Excel如何隱藏列或使用密碼保護它們,請手動執行這些操作並查看Excel如何將它們保存爲XML。這是一個輕鬆編碼,它是穩定的,而且速度很快。
操作本機Excel文件比較困難:您可以使用帶有primary interop assemblies的COM對象。根據我的經驗,這很難得到正確的答案。在最好的情況下,Excel將自身的舊副本保留下來,這可以通過計劃的每晚重置服務器來減輕。在最糟糕的情況下,Excel會隨機掛起,導致您的網站無響應。
使用本機Excel文件的另一種方式是Visual Studio Tools for Office。這當然更容易比COM互操作使用,從Visual Basic的效果最好:
Application.Workbooks.Open("Workbook.xls")
C#缺少可選參數,並打開工作簿將成爲一個糟糕的玩笑的事:
Application.Workbooks.Open(@"Workbook.xls",
missing, missing, missing, missing, missing, missing, missing,
missing, missing, missing, missing, missing,missing, missing);
我沒有因爲XML操作對我來說工作得非常好,所以深入VSTO。也許其他人可以評論它在ASP.NET網站中的工作方式。
隨着SpreadsheetGear你必須對Excel文檔的完全訪問權限,所有的微距能力,包括保護和未保護單元格,列等的能力除了在WinForms中,我們有相同的東西。
我們使用了COM對象,我不能推薦它。在很大的問題是,物體永遠不會被釋放...
我們現在使用Gembox軟件的組件。已經使用了兩年,並且工作正常,上面提到的那個便宜一點,在我看到它之前我不知道。
我已經使用傳播表達了你們所有人的要求 – 2009-06-03 07:12:10