jxl中报表单元格合并问题

WritableWorkbook wwb = Workbook.createWorkbook(endFileName);
WritableSheet ws = wwb.createSheet("Sheet1", 0);

ws.mergeCells(0, 0, 0, 1);//合并单元格,第一个参数:要合并的单元格最左上角的列号,第二个参数:要合并的单元格最左上角的行号,第三个参数:要合并的单元格最右角的列号,第四个参数:要合并的单元格最右下角的行号,

    public void generateHeader() throws RowsExceededException, WriteException, IOException {
        List<String> hader = new ArrayList<String>();
//         代理商賬號  姓名    ***之實際盈虧    客戶之實際盈虧
//         總盈虧     佣金     返點     利息        盈虧     總交易     總盈虧     佣金     返點     利息        盈虧
        Label label2 = new Label(2, 8,"代理商賬號", CELL_FORMAT_DEFAULT);
        Label label3 = new Label(3, 8,"姓名", CELL_FORMAT_DEFAULT);
        Label label4 = new Label(4, 8,"***占成後之實際盈虧", CELL_FORMAT_DEFAULT);//用于后边合并时站5列
        Label label5 = new Label(9, 8,"客戶之實際盈虧", CELL_FORMAT_DEFAULT);//因为label占5列,所以列由9开始
        sheet.addCell(label2);
        sheet.addCell(label3);
        sheet.addCell(label4);
        sheet.addCell(label5);
        nextRow();//创建1行6列。
        List<String> hader1 = new ArrayList<String>();
        hader1.add("總盈虧 ");
        hader1.add("佣金");
        hader1.add("返點");
        hader1.add("利息");
        hader1.add("盈虧");
        
        hader1.add("總交易");
        hader1.add("總盈虧");
        hader1.add("佣金");
        hader1.add("返點");
        hader1.add("利息");
        hader1.add("盈虧");
        writeHeader(hader1, 9, 4);//从(9,4)创建1行11列。
        sheet.mergeCells(2, 8, 0, 9); //(8,0)单元格向下合并 1 行。
        sheet.mergeCells(3, 8, 0, 9); //(8,1)单元格向下合并 1 行。
        sheet.mergeCells(4, 8, 8, 0); //(8,2)单元格向右合并 5 列。
        sheet.mergeCells(9, 8, 14, 0); //(8,3)单元格向右合并 6 列。
    }

原文地址:https://www.cnblogs.com/shz365/p/4150587.html