自己整理了一个JXL操作Excel的源码:
public static void outExcel()
{
//创建可写的Excel 工作簿
WritableWorkbook wb;
try {
wb = Workbook.createWorkbook(new File("d:/test/借款单.xls"));
//创建 Excel 工作表
WritableSheet ws = wb.createSheet("借款通知单", 0);
//设置 行、 列的 宽度 、高度
ws.setColumnView(0, 10); // 设置列的宽度
ws.setColumnView(1, 20); // 设置列的宽度
ws.setColumnView(2, 20); // 设置列的宽度
ws.setColumnView(3, 20); // 设置列的宽度
ws.setColumnView(4,20); // 设置列的宽度
ws.setColumnView(5, 20); // 设置列的宽度
ws.setColumnView(6, 20); // 设置列的宽度
ws.setColumnView(7,20); // 设置列的宽度
ws.setRowView(0, 500); // 设置行的高度
ws.setRowView(1, 200); // 设置行的高度
ws.setRowView(2, 300); // 设置行的高度
ws.setRowView(3, 400); // 设置行的高度
ws.setRowView(4, 300); // 设置行的高度
ws.setRowView(5, 300); // 设置行的高度
ws.setRowView(6, 300); // 设置行的高度
//让 第一列居中
WritableFont wtf = new WritableFont(WritableFont.createFont("宋体"),20,WritableFont.BOLD,false);
WritableCellFormat wcfmt = new WritableCellFormat(wtf);
wcfmt.setAlignment(jxl.format.Alignment.CENTRE);
//添加 Lable对象 (列、行)
Label lable1 = new Label(0,0,"财政借款通知单",wcfmt);
ws.addCell(lable1);
//合并单元格(列、行)
ws.mergeCells(0, 0, 7, 0);
//添加带有字型的Formatting的对象
WritableFont wf = new WritableFont(WritableFont.ARIAL,10,WritableFont.NO_BOLD,false,UnderlineStyle.NO_UNDERLINE);
WritableCellFormat wcft = new WritableCellFormat(wf);
Label lableCF = new Label(0,2,"科室名称:",wcft);
ws.addCell(lableCF);
//合并单元格(列、行)
ws.mergeCells(0, 2, 1, 2);
//添加 带有字体颜色的Formatting对象
WritableFont wfc = new WritableFont(WritableFont.ARIAL,10,WritableFont.NO_BOLD,false,UnderlineStyle.NO_UNDERLINE);
WritableCellFormat wcfFC = new WritableCellFormat(wfc);
//行 、 列
Label labelCFC = new Label(4,2,"日期:",wcfFC);
ws.addCell(labelCFC);
//添加 带有字体颜色的Formatting对象
WritableFont wfc2 = new WritableFont(WritableFont.ARIAL,10,WritableFont.NO_BOLD,false,UnderlineStyle.NO_UNDERLINE);
WritableCellFormat wcffc2 = new WritableCellFormat(wfc2);
//行 、 列
Label labelCFC2 = new Label(6,2,"单据编号:",wcffc2);
ws.addCell(labelCFC2);
//合并单元格(列、行)
ws.mergeCells(6, 2, 7, 2);
//表头 :标题 居中 12 宋体
//序号
WritableFont wtf1 = new WritableFont(WritableFont.createFont("宋体"),12,WritableFont.BOLD,false);
WritableCellFormat wcfmt1 = new WritableCellFormat(wtf1);
wcfmt1.setAlignment(jxl.format.Alignment.CENTRE);
//添加 Lable对象 (列、行)
Label lable11 = new Label(0,3,"序号",wcfmt1);
ws.addCell(lable11);
//单位名称
WritableFont wtf2 = new WritableFont(WritableFont.createFont("宋体"),12,WritableFont.BOLD,false);
WritableCellFormat wcfmt2 = new WritableCellFormat(wtf2);
wcfmt2.setAlignment(jxl.format.Alignment.CENTRE);
//添加 Lable对象 (列、行)
Label lable12 = new Label(1,3,"单位名称",wcfmt2);
ws.addCell(lable12);
//摘要
WritableFont wtf3 = new WritableFont(WritableFont.createFont("宋体"),12,WritableFont.BOLD,false);
WritableCellFormat wcfmt3 = new WritableCellFormat(wtf3);
wcfmt3.setAlignment(jxl.format.Alignment.CENTRE);
//添加 Lable对象 (列、行)
Label lable13 = new Label(2,3,"摘要",wcfmt3);
ws.addCell(lable13);
//金额
WritableFont wtf4 = new WritableFont(WritableFont.createFont("宋体"),12,WritableFont.BOLD,false);
WritableCellFormat wcfmt4 = new WritableCellFormat(wtf4);
wcfmt4.setAlignment(jxl.format.Alignment.CENTRE);
//添加 Lable对象 (列、行)
Label lable14 = new Label(3,3,"金额",wcfmt4);
ws.addCell(lable14);
//收款单位名称
WritableFont wtf5 = new WritableFont(WritableFont.createFont("宋体"),12,WritableFont.BOLD,false);
WritableCellFormat wcfmt5 = new WritableCellFormat(wtf5);
wcfmt5.setAlignment(jxl.format.Alignment.CENTRE);
//添加 Lable对象 (列、行)
Label lable15 = new Label(4,3,"收款单位名称",wcfmt5);
ws.addCell(lable15);
//收款银行
WritableFont wtf6 = new WritableFont(WritableFont.createFont("宋体"),12,WritableFont.BOLD,false);
WritableCellFormat wcfmt6 = new WritableCellFormat(wtf6);
wcfmt6.setAlignment(jxl.format.Alignment.CENTRE);
//添加 Lable对象 (列、行)
Label lable16 = new Label(5,3,"收款银行",wcfmt6);
ws.addCell(lable16);
//收款账号
WritableFont wtf7 = new WritableFont(WritableFont.createFont("宋体"),12,WritableFont.BOLD,false);
WritableCellFormat wcfmt7 = new WritableCellFormat(wtf7);
wcfmt7.setAlignment(jxl.format.Alignment.CENTRE);
//添加 Lable对象 (列、行)
Label lable17 = new Label(6,3,"收款账号",wcfmt7);
ws.addCell(lable17);
//资金性质
WritableFont wtf8 = new WritableFont(WritableFont.createFont("宋体"),12,WritableFont.BOLD,false);
WritableCellFormat wcfmt8 = new WritableCellFormat(wtf8);
wcfmt8.setAlignment(jxl.format.Alignment.CENTRE);
//添加 Lable对象 (列、行)
Label lable18 = new Label(7,3,"资金性质",wcfmt8);
ws.addCell(lable18);
//添加 借款信息 数据
//序号
WritableFont wfe = new WritableFont(WritableFont.ARIAL,10,WritableFont.NO_BOLD,false,UnderlineStyle.NO_UNDERLINE);
WritableCellFormat wcfte = new WritableCellFormat(wfe);
wcfte.setAlignment(jxl.format.Alignment.CENTRE);
jxl.write.Number labelN = new jxl.write.Number(0,4,1,wcfte);
ws.addCell(labelN);
//单位名称
WritableFont wft = new WritableFont(WritableFont.ARIAL,10,WritableFont.NO_BOLD,false,UnderlineStyle.NO_UNDERLINE);
WritableCellFormat wcf = new WritableCellFormat(wft);
Label lable = new Label(1,4,"天津联津投资有限公司",wcf);
ws.addCell(lable);
//摘要
WritableFont wft1 = new WritableFont(WritableFont.ARIAL,10,WritableFont.NO_BOLD,false,UnderlineStyle.NO_UNDERLINE);
WritableCellFormat wcf1 = new WritableCellFormat(wft1);
Label lab = new Label(2,4,"2010年6月30日借款",wcf1);
ws.addCell(lab);
//金额
//收款单位
WritableFont wft2 = new WritableFont(WritableFont.ARIAL,9,WritableFont.NO_BOLD,false,UnderlineStyle.NO_UNDERLINE);
WritableCellFormat wcf2 = new WritableCellFormat(wft2);
Label lab1 = new Label(4,4,"天津联津投资有限公司",wcf2);
ws.addCell(lab1);
//收款银行
WritableFont wft3 = new WritableFont(WritableFont.ARIAL,9,WritableFont.NO_BOLD,false,UnderlineStyle.NO_UNDERLINE);
WritableCellFormat wcf3 = new WritableCellFormat(wft3);
Label lab2= new Label(5,4,"上海浦东发展银行天津分行浦惠支行",wcf3);
ws.addCell(lab2);
//收款账号
WritableFont wft4 = new WritableFont(WritableFont.ARIAL,9,WritableFont.NO_BOLD,false,UnderlineStyle.NO_UNDERLINE);
WritableCellFormat wcf4 = new WritableCellFormat(wft4);
Label lab3= new Label(6,4,"77050154800000213",wcf4);
ws.addCell(lab3);
//资金性质
WritableFont wft5 = new WritableFont(WritableFont.ARIAL,9,WritableFont.NO_BOLD,false,UnderlineStyle.NO_UNDERLINE);
WritableCellFormat wcf5 = new WritableCellFormat(wft5);
wcf5.setAlignment(jxl.format.Alignment.CENTRE);
Label lab4= new Label(7,4,"往来资金",wcf5);
ws.addCell(lab4);
//合计
WritableFont wft6 = new WritableFont(WritableFont.ARIAL,9,WritableFont.NO_BOLD,false,UnderlineStyle.NO_UNDERLINE);
WritableCellFormat wcf6 = new WritableCellFormat(wft6);
wcf6.setAlignment(jxl.format.Alignment.CENTRE);
Label lab5= new Label(0,6,"合计",wcf6);
ws.addCell(lab5);
ws.mergeCells(0, 6, 1, 6);
//合计金额
//制单人
WritableFont wft7= new WritableFont(WritableFont.ARIAL,10,WritableFont.NO_BOLD,false,UnderlineStyle.NO_UNDERLINE);
WritableCellFormat wcf7 = new WritableCellFormat(wft7);
wcf7.setAlignment(jxl.format.Alignment.LEFT);
Label lab6= new Label(1,8,"制单人:",wcf7);
ws.addCell(lab6);
//科室负责人
WritableFont wft8= new WritableFont(WritableFont.ARIAL,10,WritableFont.NO_BOLD,false,UnderlineStyle.NO_UNDERLINE);
WritableCellFormat wcf8 = new WritableCellFormat(wft8);
wcf8.setAlignment(jxl.format.Alignment.RIGHT);
Label lab7= new Label(2,8,"科室负责人:",wcf8);
ws.addCell(lab7);
//分管局长
WritableFont wft9= new WritableFont(WritableFont.ARIAL,10,WritableFont.NO_BOLD,false,UnderlineStyle.NO_UNDERLINE);
WritableCellFormat wcf9 = new WritableCellFormat(wft9);
wcf9.setAlignment(jxl.format.Alignment.RIGHT);
Label lab8= new Label(4,8,"分管局长:",wcf9);
ws.addCell(lab8);
//局长
WritableFont wft10= new WritableFont(WritableFont.ARIAL,10,WritableFont.NO_BOLD,false,UnderlineStyle.NO_UNDERLINE);
WritableCellFormat wcf10 = new WritableCellFormat(wft10);
wcf10.setAlignment(jxl.format.Alignment.LEFT);
Label lab9= new Label(6,8,"局长:",wcf10);
ws.addCell(lab9);
wb.write();//写入Excel工作表
wb.close(); //关闭Excel工作簿对象
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (RowsExceededException e) {
e.printStackTrace();
} catch (WriteException e) {
e.printStackTrace();
}
}