C#使用NPOI设置Excel单元格背景颜色(xls,xlsx)

        每次用到这个都要去百度,这里记录一下,xls和xlsx两种格式设置背景颜色的区别,这里省略了前面读取模板或者创建excel的过程:

xls:

ICellStyle style = workbook.CreateCellStyle();

//使用NPOI已经有的颜色创建
style.FillForegroundColor = NPOI.HSSF.Util.HSSFColor.Yellow.Index;
style.FillPattern = FillPattern.SolidForeground;

//没有的颜色,使用RGB值进行创建
//这里要自定义一个颜色板覆盖掉原来的index,这里覆盖48号位置上的
HSSFPalette palette = ((HSSFWorkbook)workbook).GetCustomPalette();
palette.SetColorAtIndex(48, 0, 112, 192);
style.FillForegroundColor = palette.FindColor(0, 112, 192).Indexed;

xlsx:

ICellStyle style = workbook.CreateCellStyle();

//使用NPOI已经有的颜色创建(这里跟xls一样,不知道为什么可以通用)
style.FillForegroundColor = NPOI.HSSF.Util.HSSFColor.Yellow.Index;
style.FillPattern = FillPattern.SolidForeground;

//使用没有的颜色,这里和xls不一样,不需要覆盖掉原来的色板
style.FillForegroundColor = 0;
style.FillPattern = FillPattern.SolidForeground;
((XSSFColor)style.FillForegroundColorColor).SetRgb(new byte[] { 0, 176, 240 });

  • 7
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
使用 NPOI 库,你可以轻松地读取和修改 Excel 文件。以下是一个简单的示例代码,演示如何使用 NPOI 替换 Excel 中特定单元格的值: ```csharp using NPOI.SS.UserModel; using NPOI.XSSF.UserModel; // 如果你使用的是 .xlsx 格式的 Excel 文件 // 打开 Excel 文件 string filePath = "path_to_your_excel_file"; using (FileStream fileStream = new FileStream(filePath, FileMode.Open, FileAccess.ReadWrite)) { IWorkbook workbook = new XSSFWorkbook(fileStream); ISheet sheet = workbook.GetSheetAt(0); // 获取第一个工作表 // 遍历每个单元格,替换特定值 for (int rowIndex = sheet.FirstRowNum; rowIndex <= sheet.LastRowNum; rowIndex++) { IRow row = sheet.GetRow(rowIndex); if (row != null) { for (int cellIndex = row.FirstCellNum; cellIndex < row.LastCellNum; cellIndex++) { ICell cell = row.GetCell(cellIndex); if (cell != null && cell.CellType == CellType.String && cell.StringCellValue == "old_value") { cell.SetCellValue("new_value"); } } } } // 保存 Excel 文件 fileStream.Seek(0, SeekOrigin.Begin); workbook.Write(fileStream); } ``` 在这个示例代码中,我们打开 Excel 文件并获取第一个工作表。然后,我们遍历每个单元格,并检查其值是否等于 "old_value"。如果是,则将其替换为 "new_value"。最后,我们保存 Excel 文件并关闭文件流。 请注意,你需要在项目中添加对 NPOI 库的引用才能使用它。此外,如果你使用的是 .xls 格式的 Excel 文件,你需要使用 HSSFWorkbook 而不是 XSSFWorkbook。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

贵宾哥Cyril

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值