数字格式使指能够控制excel单元格中数字如何显示的格式字符串。例如,我们可以对数字12345应用数字格式“0.00”,使之显示为12345.00。数字格式字符串通常由以下某个或某几个说明符构成:
- # :数字占位符
- 0 :0占位符
- . :小数点
- , :分组符
- % :百分号占位符
- [red] :颜色说明符
本文将介绍如何使用spire.xls for java在excel中设置数字格式。
import com.spire.xls.*;
public class setnumberformat {
public static void main(string[] args){
//创建workbook实例
workbook workbook = new workbook();
//获取第一个工作表
worksheet sheet = workbook.getworksheets().get(0);
//添加文本到b1
sheet.getcellrange("b1").settext("数字格式");
sheet.getcellrange("b1").getcellstyle().getexcelfont().isbold(true);
//合并b1、c1
sheet.getcellrange("b1:c1").merge();
sheet.getcellrange("b1:c1").sethorizontalalignment(horizontalaligntype.center);
//添加文本到b3
sheet.getcellrange("b3").settext("0");
//添加数字到c3并设置数字格式
sheet.getcellrange("c3").setnumbervalue(1234.5678);
sheet.getcellrange("c3").setnumberformat("0");
//重复以上步骤,添加文本和数字到其他单元格并设置数字格式
sheet.getcellrange("b4").settext("0.00");
sheet.getcellrange("c4").setnumbervalue(1234.5678);
sheet.getcellrange("c4").setnumberformat("0.00");
sheet.getcellrange("b5").settext("#,##0.00");
sheet.getcellrange("c5").setnumbervalue(1234.5678);
sheet.getcellrange("c5").setnumberformat("#,##0.00");
sheet.getcellrange("b6").settext("$#,##0.00");
sheet.getcellrange("c6").setnumbervalue(1234.5678);
sheet.getcellrange("c6").setnumberformat("$#,##0.00");
sheet.getcellrange("b7").settext("0;[red]-0");
sheet.getcellrange("c7").setnumbervalue(-1234.5678);
sheet.getcellrange("c7").setnumberformat("0;[red]-0");
sheet.getcellrange("b8").settext("0.00;[red]-0.00");
sheet.getcellrange("c8").setnumbervalue(-1234.5678);
sheet.getcellrange("c8").setnumberformat("0.00;[red]-0.00");
sheet.getcellrange("b9").settext("#,##0;[red]-#,##0");
sheet.getcellrange("c9").setnumbervalue(-1234.5678);
sheet.getcellrange("c9").setnumberformat("#,##0;[red]-#,##0");
sheet.getcellrange("b10").settext("#,##0.00;[red]-#,##0.000");
sheet.getcellrange("c10").setnumbervalue(-1234.5678);
sheet.getcellrange("c10").setnumberformat("#,##0.00;[red]-#,##0.00");
sheet.getcellrange("b11").settext("0.00e 00");
sheet.getcellrange("c11").setnumbervalue(1234.5678);
sheet.getcellrange("c11").setnumberformat("0.00e 00");
sheet.getcellrange("b12").settext("0.00%");
sheet.getcellrange("c12").setnumbervalue(1234.5678);
sheet.getcellrange("c12").setnumberformat("0.00%");
//设置[b3:b12]、[c3:c12]背景颜色
sheet.getcellrange("b3:b12").getcellstyle().setknowncolor(excelcolors.gray25percent);
sheet.getcellrange("c3:c12").getcellstyle().setknowncolor(excelcolors.gray50percent);
//设置2、3列列宽
sheet.setcolumnwidth(2, 24);
sheet.setcolumnwidth(3, 24);
//保存文档
workbook.savetofile("setnumberformat.xlsx", excelversion.version2013);
}
}
结果文档: