2016年12月15日 15:25:01 起个名字真的好难啊 阅读数:15091更多
个人分类: 文件操作
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/e295166319/article/details/53670780
使用NPOI设置Excel单元格背景颜色时,应该设置FillForegroundColor属性,而且还要设置FillPattern才行。
代码如下:
style.FillForegroundColor = NPOI.HSSF.Util.HSSFColor.PINK.index;
style.FillPattern = FillPatternType.SOLID_FOREGROUND;
简单代码示例:
using UnityEngine;
using System.Collections;
using UnityEditor;
using NPOI.HSSF.UserModel;
using NPOI.HPSF;
using NPOI.HSSF.Util;
using NPOI.POIFS.FileSystem;
using NPOI.SS.UserModel;
using System.Collections.Generic;
using System.Linq;
using System.IO;
public class WorkBook
{
[MenuItem("H3D/XLSX文件测试")]
static void CreateExcelFile()
{
// 生成简报
IWorkbook wb = new HSSFWorkbook();
var sheet = wb.CreateSheet("第一页");
int currentRow = 0;
ICellStyle s = wb.CreateCellStyle ();
s.FillForegroundColor = HSSFColor.Pink.Index;
s.FillPattern = FillPattern.SolidForeground;
// 简报开始
var row = sheet.CreateRow(currentRow++);
row.CreateCell(0).SetCellValue("第一页第一行");
row.GetCell(0).CellStyle = s;
row = sheet.CreateRow(currentRow++);
row.CreateCell(0).SetCellValue("第一页第二行");
var sheet2 = wb.CreateSheet("第二页");
int currentRow2 = 0;
// 简报开始
var row2 = sheet2.CreateRow(currentRow2++);
row2.CreateCell(0).SetCellValue("第二页第一行");
row2 = sheet2.CreateRow(currentRow2++);
row2.CreateCell(0).SetCellValue("第二页第二行");
//save
string savePath = "XLSXTest.xlsx";
FileStream fs = new FileStream(savePath, FileMode.OpenOrCreate, FileAccess.Write);
wb.Write(fs);
fs.Close();
Debug.Log("报告路径:" + savePath);
}
}
效果图:
以上引用需要使用:NPOI库;
以上代码和NPOI库需要放入Editor目录下;