自定义excel表格(生成报价单,含多种excel样式调整)

 /**
     * 购物车生成商品报价单
     *
     * @param
     * @param response
     */
    public static void exportxx(BbbUserShoppingCarQTO.QTO qto, BbbUserShoppingCarVO.ShopCartVO shopCartInfo, HttpServletResponse response) {
        // 创建excel
        HSSFWorkbook wk = new HSSFWorkbook();
        // 创建一张工作表
        HSSFSheet sheet = wk.createSheet("商品报价单");
        // 设置工作表中的1-9列的宽度
        sheet.setColumnWidth(0, 3500);
        sheet.setColumnWidth(1, 8000);
        sheet.setColumnWidth(2, 4000);
        sheet.setColumnWidth(3, 4000);
        sheet.setColumnWidth(4, 4000);
        sheet.setColumnWidth(5, 4000);
        sheet.setColumnWidth(6, 4000);
        sheet.setColumnWidth(7, 4000);
        sheet.setColumnWidth(8, 6000);

        //创建第一行
        HSSFRow row1 = sheet.createRow(0);
        // 创建第一行的第一个单元格
        // 向单元格写值
        HSSFCell cell = row1.createCell(0);

        HSSFCellStyle style = wk.createCellStyle();

        //设置边框
//        style.setBorderTop(BorderStyle.THIN);
//        style.setBorderRight(BorderStyle.THIN);
//        style.setBorderBottom(BorderStyle.THIN);
//        style.setBorderLeft(BorderStyle.THIN);
        //设置第一行字体大小样式
        Font font = wk.createFont();
        font.setFontHeightInPoints((short) 18);
        font.setFontName("微软雅黑");
        font.setBold(Boolean.TRUE);
        style.setFont(font);//增加字体样式


        row1.createCell(0).getCellStyle().setAlignment(HorizontalAlignment.CENTER);//水平居中
        row1.createCell(0).getCellStyle().setVerticalAlignment(VerticalAlignment.CENTER);//垂直居中
        row1.setHeight((short) 700);

        String content = "商品报价单";
        HSSFRichTextString hts = new HSSFRichTextString(content);
        int n = content.indexOf("商品报价单");
        hts.applyFont(n, n + 5, font); //从第n位开始,n+2位字符设置字体样式
//        hts.applyFont(1,4,font);//第2位到第4位字符串下添加下划线
        cell.setCellValue(hts); //向单元格写入值

        //合并单元格CellRangeAddress构造参数依次表示起始行,截止行,起始列,截至列。
        //0表示 第一行第一列
        sheet.addMergedRegion(new CellRangeAddress(0, 0, 0, 8));

        //创建第二行
        HSSFRow row2 = sheet.createRow(1);
        row2.createCell(7).setCellValue("报价单号:" + "1526384997354139");
        row2.setHeight((short) 500);
        sheet.addMergedRegion(new CellRangeAddress(1, 1, 7, 8));

        //创建第三行
        HSSFRow row3 = sheet.createRow(2);
        row3.createCell(0).setCellValue("客户名称");
        row3.createCell(4).setCellValue("报价公司");
        HSSFCell cell3 = row3.createCell(5);
        HSSFCellStyle style3 = wk.createCellStyle();
        style3.setVerticalAlignment(VerticalAlignment.DISTRIBUTED);
        cell3.setCellStyle(style3);
        cell3.setCellValue("深圳市XXXXX有限公司");
//        row3.createCell(5).setCellValue("深圳市XXXXX有限公司");
        row3.setHeight((short) 500);
        sheet.addMergedRegion(new CellRangeAddress(2, 2, 1, 3));
        sheet.addMergedRegion(new CellRangeAddress(2, 2, 5, 8));

        //创建第四行
        HSSFRow row4 = sheet.createRow(3);
        row4.createCell(0).setCellValue("联系人");
        row4.createCell(4).setCellValue("公司地址");
        HSSFCell cell4 = row4.createCell(5);
        HSSFCellStyle style1 = wk.createCellStyle();
        style1.setVerticalAlignment(VerticalAlignment.DISTRIBUTED);
        cell4.setCellStyle(style1);
        cell4.setCellValue("深圳市南山区粤海街道科技园XXXX");
//        row4.createCell(5).setCellValue("深圳市南山区粤海街道科技园XXXX");
        row4.setHeight((short) 500);
        sheet.addMergedRegion(new CellRangeAddress(3, 3, 1, 3));
        sheet.addMergedRegion(new CellRangeAddress(3, 3, 5, 8));

        //创建第五行
        HSSFRow row5 = sheet.createRow(4);
        row5.createCell(0).setCellValue("联系方式");
        row5.createCell(4).setCellValue("联系方式");
        HSSFCell cell5 = row5.createCell(5);
        HSSFCellStyle style2 = wk.createCellStyle();
        style2.setVerticalAlignment(VerticalAlignment.DISTRIBUTED);
        cell5.setCellStyle(style2);
        cell5.setCellValue("XXX-XXX-XXXX");
//        row5.createCell(5).setCellValue("400-816-1216");
        row5.setHeight((short) 500);
        sheet.addMergedRegion(new CellRangeAddress(4, 4, 1, 3));
        sheet.addMergedRegion(new CellRangeAddress(4, 4, 5, 8));

        //创建第六行
        HSSFRow row6 = sheet.createRow(5);
        row6.setHeight((short) 500);
//        row6.createCell(0).setCellValue("序号");
//        row6.createCell(1).setCellValue("商品型号");
//        row6.createCell(2).setCellValue("品牌");
//        row6.createCell(3).setCellValue("起订量");
//        row6.createCell(4).setCellValue("单价(元)");
//        row6.createCell(5).setCellValue("采购数量");
//        row6.createCell(6).setCellValue("金额");
//        row6.createCell(7).setCellValue("备注");
//        row6.createCell(0).getCellStyle().setAlignment(HorizontalAlignment.CENTER);//水平居中
//        r
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值