首页 > 学院 > 开发设计 > 正文

Excel 同一单元格显示不同颜色

2019-11-17 04:17:26
字体:
来源:转载
供稿:网友

之前 POI 生成 Excel 文件, 为了美观, 可户要求在同一单元格里面显示不同颜色,GG 了不少时间, 没找到相应的做法.都打电话个客户商量是否不去改变颜色, 好在客户也给我们时间, 让我们再找找,不管怎样,总算是有了好结果.很简单的做法:

HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet sheet = workbook.createSheet();
HSSFRow row = sheet.createRow((short) 1);
  HSSFCell cell = row.createCell((short)1);

  HSSFCellStyle. cellStyle=workbook.createCellStyle(); 
  cellStyle.setWrapText(true);
                      
  HSSFFont font = workbook.createFont();
  font.setFontHeightInPoints((short) 10); // 字体高度
  font.setColor(HSSFColor.RED.index); // 字体颜色
  font.setFontName("Arial"); // 字体
  font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD); // 宽度
  font.setItalic(false); // 是否使用斜体
 
  HSSFFont font1 = workbook.createFont();
  font1.setFontHeightInPoints((short) 10); // 字体高度
  font1.setColor(HSSFColor.BLUE.index); // 字体颜色
  font1.setFontName("Arial"); // 字体
  font1.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD); // 宽度
  font1.setItalic(true); // 是否使用斜体

HSSFRichTextString ts= new HSSFRichTextString("aben test /n/rethern test");
  ts.applyFont(0,9,font);
  ts.applyFont(10,ts.length()-1,font1);
  cell.setCellType(HSSFCell.CELL_TYPE_STRING);
  cell.setCellValue(ts);  

FileOutputStream fOut = new FileOutputStream("e://temp//test.xls");
  workbook.write(fOut);
  fOut.flush();
  fOut.close();
  System.out.PRintln("文件生成...");

poi-3.0.1.jar 测试通过


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表