0
点赞
收藏
分享

微信扫一扫

HSSFWorkbook And SXSSFWorkbook样式设置


直插正题:

HSSFWorkbook  创建样式:

HSSFCellStyle style = workbook.createCellStyle();
    一、设置背景色:
	cellStyle.setFillForegroundColor((short) 10);// 设置背景色,颜色的索引还必须是 0x08 ~ 0x40 (8 ~ 64) 的数字    
	自定义颜色,如果不使用POI提供的默认颜色,就需要自定颜色索引:
       HSSFPalette palette = workbook.getCustomPalette(); 
	      palette.setColorAtIndex((short) 9, (byte) (color.getRed()), (byte) (color.getGreen()), (byte) (color.getBlue()));
              设置颜色的索引只能是 8 ~ 64,在此之外的索引无效,也不会报错。以下三种方式都可以设置成功 :
       	      palette.setColorAtIndex((short)9, (byte) (0xff & 251), (byte) (0xff & 161), (byte) (0xff & 161));
  	      palette.setColorAtIndex((short)10, (byte) (0x66), (byte) (0xcd), (byte) (0xaa));
  	      palette.setColorAtIndex((short)11, (byte) (255), (byte) (165), (byte) (0));
  然后使用颜色,如上例,可以用新的颜色索引,替换原有的颜色:
  style.setFillForegroundColor((short) 9);  
	cellStyle.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND); //设置前景填充样式,SOLID_FOREGROUND纯色使用前景颜色填充
	      cellStyle.setFillForegroundColor(HSSFColor.DARK_RED.index);//前景填充色
	      cellStyle.setFillBackgroundColor(HSSFColor.AQUA.index);//设置背景色      

一、设置背景色:

颜色类型是在HSSFColor里面定义的:



                执行结果

HSSFColor.ROYAL_BLUE

 

HSSFColor.TEAL

 

HSSFColor.LIME

 

HSSFColor.PALE_BLUE

 

HSSFColor.AQUA

 

HSSFColor.GREEN

 

HSSFColor.TURQUOISE

 

HSSFColor.DARK_BLUE

 

HSSFColor.CORNFLOWER_BLUE

 

HSSFColor.OLIVE_GREEN

 

HSSFColor.WHITE

 

HSSFColor.LIGHT_TURQUOISE

 

HSSFColor.LEMON_CHIFFON

 

HSSFColor.LIGHT_GREEN

 

HSSFColor.BLUE

 

HSSFColor.DARK_RED

 

HSSFColor.CORAL

 

HSSFColor.RED

 

HSSFColor.LIGHT_YELLOW

 

HSSFColor.SKY_BLUE

 

HSSFColor.BROWN

 

HSSFColor.SEA_GREEN

 

HSSFColor.INDIGO

 

HSSFColor.MAROON

 

HSSFColor.GREY_80_PERCENT

 

HSSFColor.GREY_25_PERCENT

 

HSSFColor.DARK_GREEN

 

HSSFColor.YELLOW

 

HSSFColor.GOLD

 

HSSFColor.GREY_40_PERCENT

 

HSSFColor.DARK_TEAL

 

HSSFColor.PINK

 

HSSFColor.ORCHID

 

HSSFColor.LIGHT_BLUE

 

HSSFColor.LIGHT_CORNFLOWER_BLUE

 

HSSFColor.BLACK

 

HSSFColor.DARK_YELLOW

 

HSSFColor.VIOLET

 

HSSFColor.LAVENDER

 

HSSFColor.ROSE

 

HSSFColor.BLUE_GREY

 

HSSFColor.LIGHT_ORANGE

 

HSSFColor.ORANGE

 

HSSFColor.GREY_50_PERCENT

 


   二、设置边框:
	cellStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下边框    
	cellStyle.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左边框   
	cellStyle.setBorderTop(HSSFCellStyle.BORDER_THIN);//上边框    
	cellStyle.setBorderRight(HSSFCellStyle.BORDER_THIN);//右边框
   三、设置居中:
	cellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 水平居中
 cellStyle.setAlignment(HSSFCellStyle.VERTICAL_CENTER); // 垂直居中
   四、设置字体: 
	HSSFFont font = workbook.createFont(); 
	font.setFontName("宋体");//设置字体
	font.setFontHeightInPoints((short) 20);//设置字体大小
	font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);//粗体显示
   五、设置自动换行:
	cellStyle.setWrapText(true);//设置自动换行   
   六、合并单元格:
	Region region1 = new Region(0, (short) 0, 0, (short) 6);//参数1:行号 参数2:起始列号 参数3:行号 参数4:终止列号
	sheet.addMergedRegion(region1); 
   七、公式:	

cellStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下边框

操作

语法

添加多个数值

=

SUM(Loc1:Locn) or = SUM(n1,n2,)

计数

=

COUNT(Loc1:Locn) or = COUNT(n1,n2,)

两个数的幂

=

POWER(Loc1,Loc2) or = POWER(number, power)

多个数的最大值

=

MAX(Loc1:Locn) or = MAX(n1,n2,)

乘积

=

PRODUCT(Loc1:Locn) or = PRODUCT(n1,n2,)

阶乘

=

FACT(Locn) or = FACT(number)

绝对数字

=

ABS(Locn) or = ABS(number)

今天的日期

=TODAY()

转换成小写

=

LOWER(Locn) or = LOWER(text)

平方根

=

SQRT(locn) or = SQRT(number)


SXSSFWorkbook的设置与HSSFWorkbook设置一样,只是改HSSFCellStyle为CellStyle和HSSFPalette 为Palatte。

最后需要查看API的道友,可查看此链接:http://www.yiibai.com/apache_poi/apache_poi_cells.html

举报

相关推荐

0 条评论