随笔 - 81  文章 - 0  评论 - 514  阅读 - 41万

NPOI导Excel样式设置

一、创建一个Excel

               //创建一个工作簿
                XSSFWorkbook workbook = new XSSFWorkbook();
                //创建一个页
                ISheet sheet = workbook.CreateSheet("sheet1");
                //创建一行
                IRow row = sheet.CreateRow(0);
                //创建一列
                ICell cell = row.CreateCell(0);

 

二、设置字体

复制代码
          ICellStyle style = workbook.CreateCellStyle();//创建样式对象
                IFont font = workbook.CreateFont(); //创建一个字体样式对象
                font.FontName = "方正舒体"; //和excel里面的字体对应
                font.Color = new HSSFColor.PINK().GetIndex();//颜色参考NPOI的颜色对照表(替换掉PINK())
                font.IsItalic = true; //斜体
                font.FontHeightInPoints = 16;//字体大小
                font.Boldweight = short.MaxValue;//字体加粗
                style.SetFont(font); //将字体样式赋给样式对象
cell.CellStyle = style; //把样式赋给单元格
复制代码

 三、设置单元格

1、单元格前景色

 ICellStyle style=workbook.CreateCellStyle();
 style.FillForegroundColor = 14;  //具体数字代表的颜色看NPOI颜色对照表
 style.FillPattern = FillPatternType.SOLID_FOREGROUND;

2、单元格宽高

     行高:row.Height = 30 * 20;    //行高为30

     列宽:sheet.SetColumnWidth(3, 13 * 256)   //第4列的列宽为13

3、合并单元格

    单元格合并后,样式以左上角的单元格为准

    //CellRangeAddress四个参数为:起始行,结束行,起始列,结束列

  sheet.AddMergedRegion(new CellRangeAddress(0, 0, 0, 10));

4、水平居中

 style.Alignment = HorizontalAlignment.CENTER;

5、设置公式

    不需要写“=”号

  cell.CellFormula = "公式";

6.边框

//上下左右

styleFont.BorderTop = NPOI.SS.UserModel.BorderStyle.THIN;    
styleFont.BorderBottom = NPOI.SS.UserModel.BorderStyle.THIN;  
styleFont.BorderLeft = NPOI.SS.UserModel.BorderStyle.THIN;  
styleFont.BorderRight = NPOI.SS.UserModel.BorderStyle.THICK;

 

颜色对照表:

颜色 测试 Class名称 short
       
  Test颜色 Black 8
  Test颜色 Brown 60
  Test颜色 Olive_Green 59
  Test颜色 Dark_Green 58
  Test颜色 Dark_Teal 56
  Test颜色 Dark_Blue 18
  Test颜色 Indigo 62
  Test颜色 Grey_80_PERCENT 63
  Test颜色 Dark_Red 16
  Test颜色 Orange 53
  Test颜色 DARK_YELLOW 19
  Test颜色 Green 17
  Test颜色 Teal 21
  Test颜色 Blue 12
  Test颜色 Blue_Grey 54
  Test颜色 Grey_50_PERCENT 23
  Test颜色 Red 10
  Test颜色 LIGHT_ORANGE 52
  Test颜色 LIME 50
  Test颜色 SEA_GREEN 57
  Test颜色 AQUA 49
  Test颜色 LIGHT_BLUE 48
  Test颜色 VIOLET 20
  Test颜色 GREY_40_PERCENT 55
  Test颜色 Pink 14
  Test颜色 Gold 51
  Test颜色 Yellow 13
  Test颜色 BRIGHT_GREEN 11
  Test颜色 TURQUOISE 15
  Test颜色 SKY_BLUE 40
  Test颜色 Plum 61
  Test颜色 GREY_25_PERCENT 22
  Test颜色 Rose 45
  Test颜色 Tan 47
  Test颜色 LIGHT_YELLOW 43
  Test颜色 LIGHT_GREEN 42
  Test颜色 LIGHT_TURQUOISE 41
  Test颜色 PALE_BLUE 44
  Test颜色 LAVENDER 46
  Test颜色 White 9
  Test颜色 CORNFLOWER_BLUE 24
  Test颜色 LEMON_CHIFFON 26
  Test颜色 MAROON 25
  Test颜色 ORCHID 28
  Test颜色 CORAL 29
  Test颜色 ROYAL_BLUE 30
  Test颜色 LIGHT_CORNFLOWER_BLUE 31
  Test颜色 AUTOMATIC 64

四、用文件流方式下载NPOI excel

1
2
3
4
5
6
7
8
9
10
11
//生成excel文件流下载
          using (MemoryStream ms =new MemoryStream())
          {
             workbook.write(ms);
              string fileName = HttpUtility.UrlEncode("test.xlsx");
              Response.AddHeader("content-Disposition", "attachment;filename=" + fileName);
              //增加这指定长度防止导出的excel有不可读取内容。
              Response.AddHeader("content-Length", ms.ToArray().Length.ToString());
              Response.BinaryWrite(ms.ToArray());
              Response.End();
          }

  

 

posted on   包子wxl  阅读(9954)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示

喜欢请打赏

扫描二维码打赏

支付宝打赏