Java - Use Jxcell Library to support macros

一般來說,我們如果利用jxl來讀取帶有巨集的樣版檔,並將內容寫入,再另外輸出檔案,

如此一來巨集會損毀或失效,不過利用Jxcell即可以支援巨集的功能!

基本上使用Jxcell比起Jxl來說在語法上更加的簡潔,並且使用到的類別也較少,如下:

Jxl部分:
Workbook sWorkbook = Workbook.getWorkbook(new File("D:\\template.xls"));
WritableWorkbook wWorkbook = Workbook.createWorkbook(new File("D:\\result.xls"), sWorkbook);
....
wWorkbook.write();
wWorkbook.close();

Jxcell部分:
View view=new View();
view.read("D:\\template.xls");
....
view.write("D:\\result.xls");

上面的兩個基本的範例,主要是針對讀取一個樣版檔案,再寫入相關內容,並另外輸出檔

案出去,若我們輸出的檔案需要將事先寫好的巨集一起帶出,在使用jxl上確實會吃虧!

以Jxl輸出後的檔案,在開啟時會出現的錯誤訊息,如下:

剛開啟檔案,選擇啟用巨集時跳出

點選巨集時跳出

以這個Jxl版本(忘了XD)會出現這些訊息,但若以目前最新版本的Jxl(2.6.10),則您自訂的

巨集會消失!

因此若要輸出帶有巨集的Excel,可以採用另一個Library Jxcell來處理囉!

留言