java合并多张同类型的格式一样的excel表,如何实现第二张表以上的表第一行不合并?
import com.spire.xls.CellRange;
import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class MergeExcelFilesToOneWorksheet {
public static void main(String []args){
//加载Excel文档
Workbook workbook = new Workbook();
workbook.loadFromFile("test.xlsx");
//获取第一个工作表
Worksheet sheet1 = workbook.getWorksheets().get(0);
//获取第二个工作表
Worksheet sheet2 = workbook.getWorksheets().get(1);
//复制第二个工作表除表头外的其他内容到第一个工作表末尾
CellRange sourceRange = sheet2.getRange().get(2, 1, sheet2.getLastRow(), sheet2.getLastColumn());
CellRange destRange = sheet1.getRange().get(sheet1.getLastRow() +1, 1);
sourceRange.copy(destRange);
//删除第二个表
sheet2.remove();
workbook.saveToFile("MergeWorksheets.xlsx", ExcelVersion.Version2013);
}
}
除了上面的方案,还可以用Worksheet类的exportDataTable(CellRange range, boolean exportColumnNames)和insertDataTable()方法来实现,但这种方式不能保留单元格的格式