`
梦中有你
  • 浏览: 59043 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

JXL写入Excel (包括样式、列宽、列高特殊格式、剧中、字体等操作)

阅读更多

自己整理了一个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(); 
                   
            } 
       
           
    }

  • jxl.jar (708.7 KB)
  • 下载次数: 17
分享到:
评论
1 楼 mfkwfc 2011-10-25  
呵呵。谢谢了!

相关推荐

Global site tag (gtag.js) - Google Analytics