本文介紹在Java代碼環境中如何將Excel工作簿按工作表拆分為多個Excel文檔,即:把Excel工作簿中的每一個工作表單獨保存為一個Excel工作簿文件。
思路及方法:通過將源文檔中的每個工作表通過復制的方式,保存到新的工作簿。
程序環境
- IDEA
- JDK1.8.0
- Spire.Xls.jar(免費版)
測試文檔如圖,包含三個工作表:
代碼示例
import com.spire.xls.*; public class SplitFile { public static void main(String[] args) { //加載Excel文檔 Workbook wb = new Workbook(); wb.loadFromFile("test.xlsx"); //遍歷所有工作表 for (int i = 0; i < wb.getWorksheets().getCount(); i++) { //創建一個新的Excel工作簿,並刪除默認生成的空白工作表 Workbook newWb = new Workbook(); newWb.getWorksheets().clear(); //將源文檔中的工作表復制到新的Workbbok newWb.getWorksheets().addCopy(wb.getWorksheets().get(i)); //獲取源文檔中的工作表名 String sheetName = wb.getWorksheets().get(i).getName(); //保存新的Excel工作簿 newWb.saveToFile( sheetName + ".xlsx", FileFormat.Version2013); } } }
文檔拆分結果:
注:編輯代碼調用接口及方法操作Excel文檔時,注意先導入Spire.Xls.jar到Java程序。
1. 手動下載導入jar到Java程序;
2. 通過Maven倉庫下載導入。