一、创建一个Excel

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

二、设置字体

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

三、设置单元格

1、单元格前景色

 ICellStyle style=workbook.CreateCellStyle();
style.FillForegroundColor = ; //具体数字代表的颜色看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

   //生成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();
}

  

NPOI导Excel样式设置的更多相关文章

  1. NPOI导Excel样式设置(转)

    一.创建一个Excel //创建一个工作簿 XSSFWorkbook workbook = new XSSFWorkbook(); //创建一个页 ISheet sheet = workbook.Cr ...

  2. winform npoi excel 样式设置

    IWorkbook excel = new HSSFWorkbook();//创建.xls文件 ISheet sheet = excel.CreateSheet("sheet1") ...

  3. NPOI导出EXCEL 打印设置分页及打印标题

    在用NPOI导出EXCEL的时候设置分页,在网上有查到用sheet1.SetRowBreak(i)方法,但一直都没有起到作用.经过研究是要设置  sheet1.FitToPage = false; 而 ...

  4. [转]NPOI导出EXCEL 打印设置分页及打印标题

    本文转自:http://www.cnblogs.com/Gyoung/p/4483475.html 在用NPOI导出EXCEL的时候设置分页,在网上有查到用sheet1.SetRowBreak(i)方 ...

  5. DevExpress导出Excel样式设置

    /// <summary> /// 导出到Excel /// </summary> /// <param name="gridControl"> ...

  6. NPOI导出EXCEL样式

    public void Export(DataRequest<ExportModel> request, DataResponse<dynamic> response) { t ...

  7. 基于NPOI对Excel进行简单的操作

    1. 关于NPOI NPOI是一个开源的用于在C#程序中读写Excel.WORD等微软OLE2组件文档的项目,使用NPOI可以在没有安装Office的情况下对Word或Excel文档进行读写操作. 2 ...

  8. 2.3.9 用NPOI操作EXCEL--通过NPOI获得公式的返回值

    前面我们学习了通过NPOI向Excel中设置公式,那么有些读者可能会问:“NPOI能不能获取公式的返回值呢?”,答案是可以!一.获取模板文件中公式的返回值如在D盘中有一个名为text.xls的Exce ...

  9. [转]用NPOI操作EXCEL--通过NPOI获得公式的返回值

    本文转自:http://www.cnblogs.com/atao/archive/2009/10/12/1582085.html 前面我们学习了通过NPOI向Excel中设置公式,那么有些读者可能会问 ...

随机推荐

  1. Rxjava学习(二操作符)

    操作符是为了解决对Observable对象的变换的问题,操作符用于在Observable和最终的Subscriber之间修改Observable发出的事件 1.filter filter()操作符是可 ...

  2. VMware虚拟机安装教程详解图文

            学习Linux系统最好的方式就是在自己的虚拟机上安装Linux:接下来就给大家简单介绍一下VMware虚拟机的安装以及Linux的安装:VMware虚拟机只是为了更好的学习Linux: ...

  3. Java——语句

    空语句: ; 符合语句:{} if语句:if () {} else {} break 语句:跳出单层循环 循环语句:for(;;){}   do{}while()

  4. python第五十九天-----补上笔记

    rabbitmq_server_topic    topic模式 #!/usr/bin/env python #{data} {time} #_*_coding:utf-8_*_ import pik ...

  5. MySQL 并行复制演进及 MySQL 8.0 中基于 WriteSet 的优化

    MySQL 8.0 可以说是MySQL发展历史上里程碑式的一个版本,包括了多个重大更新,目前 Generally Available 版本已经已经发布,正式版本即将发布,在此将介绍8.0版本中引入的一 ...

  6. 用Python实现数据结构之映射

    映射与字典 字典dict是Python中重要的数据结构,在字典中,每一个键都对应一个值,其中键与值的关系就叫做映射,也可以说是每一个键都映射到一个值上. 映射(map)是更具一般性的数据类型,具体到P ...

  7. JMeter乱码常见的解决方案

    方法一.直接将JMeter中http请求中Content encoding改为utf-8 方法二.编辑JMeter安装目录:apache-jmeter-3.2\bin中的jmeter.properti ...

  8. 自己动手写waf指纹识别

    import requests import re def target_url(scan_url): xssstring = '<script>alert(1)</script&g ...

  9. ccf题库中2016年4月2日俄罗斯方块问题

    题目如下: 问题描述 俄罗斯方块是俄罗斯人阿列克谢·帕基特诺夫发明的一款休闲游戏. 游戏在一个15行10列的方格图上进行,方格图上的每一个格子可能已经放置了方块,或者没有放置方块.每一轮,都会有一个新 ...

  10. Pandas 库中excel的读写方法介绍

    首选:https://blog.csdn.net/u014597198/article/details/83104653 其次:https://blog.csdn.net/qq_34377830/ar ...