前两天用NPOI来操作Office软件,在使用的时候有点问题,也有收获,就做个笔记 记录下来,主要做的事数据的导出功能。一些公共的方法,做个笔记。 更多的详细内容可以到NPOI的官方教程去看  http://tonyqus.sinaapp.com/

1.引用NPOI

这个,使用第三方类库就要添加DLL ,我使用的是1.2.5的版本 ,具体的版本可以在属相中找到 如下图。 貌似最新的版本到了2.0了

DLL文件点击下载

2.创建简单的一个Excel

 MemoryStream ms = new MemoryStream();   //创建内存流
//创建一个文件
string fileName = "D://xinjian.xlsx";
IWorkbook workbook = new HSSFWorkbook();//IWorkbook和HSSFWorkbook的命名空间分别是NPOI.HSSF.UserModel;NPOI.SS.UserModel; 记得引用
ISheet sheet1 = workbook.CreateSheet("sheet1");//创建一个工作薄 括号内为名称
IRow dataRow = sheet1.CreateRow(1);//创建数据行 1代表是在第几行创建 变量
dataRow.CreateCell(1).SetCellValue("第一行第一列");//创建单元格 并且赋值 workbook.Write(ms);
ms.Flush();
ms.Position = 0; using (FileStream fs = new FileStream(fileName, FileMode.Create, FileAccess.Write))
{
byte[] data = ms.ToArray(); fs.Write(data, 0, data.Length);
fs.Flush(); data = null;
}

3.获取Excel数据

4.设置高度

headerRow.Height = 100 * 20;//设置第一行的高度
//Height的单位是1/20个点,所以Height的值永远是HeightInPoints的20倍。

5.设置宽度

sheet1.SetColumnWidth(1, 3 * 256);//设置宽
//这里你会发现一个有趣的现象,SetColumnWidth的第二个参数要乘以256,这是怎么回事呢?其实,这个参数的单位是1/256个字符宽度,也就是说,这里是把B列的宽度设置为了100个字符。

6.设置样式

headerRow.GetCell(1).CellStyle = Getcellstyle(workbook, "header");//设置样式

//单元格样式
static ICellStyle Getcellstyle(IWorkbook wb, string type)
{
//HSSFCellStyle cels = new HSSFCellStyle (1,
ICellStyle cellStyle = wb.CreateCellStyle();
cellStyle.Alignment = NPOI.SS.UserModel.HorizontalAlignment.CENTER; switch (type)
{
case "header":
cellStyle.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.TOP;
cellStyle.WrapText = true;//自动换行
break;
case "program":
cellStyle.FillPattern = FillPatternType.SOLID_FOREGROUND;
cellStyle.FillForegroundColor = 26;
break;
case "groupName":
cellStyle.FillPattern = FillPatternType.SOLID_FOREGROUND;
cellStyle.FillForegroundColor = 52;
break;
case "columnName":
cellStyle.FillPattern = FillPatternType.SOLID_FOREGROUND;
cellStyle.FillForegroundColor = 50;
break;
}
return cellStyle;
} //在这里填充的单元格的背景色不是FillBackgroundColor 而是 FillForegroundColor 很奇怪 而且 必须设置FillPattern这个属性

7.颜色对比表

最后,给大家提供一个操作NPOI简单的类库,希望有所帮助   点击下载

NPOI 创建Excel 设置宽度 样式 颜色对比表的更多相关文章

  1. 用NPOI创建Excel、合并单元格、设置单元格样式、边框的方法

    本篇文章小编为大家介绍,用NPOI创建Excel.合并单元格.设置单元格样式.边框的方法.需要的朋友参考下 今天在做项目中,遇到使用代码生成具有一定样式的Excel,找了很多资料,最后终于解决了,Ex ...

  2. 使用NPOI创建Excel

    一.NPOI 函式庫: NPOI 函式庫檔案有七個,NPOI 函式庫可以在 http://npoi.codeplex.com 中下載,分別是: NPOI.DLL:NPOI 核心函式庫. NPOI.DD ...

  3. NPOI 创建Excel,数据读取与写入

    <1> using System; using System.Collections.Generic; using System.Linq; using System.Web; using ...

  4. NPOI创建EXCEL(NOPI系列1)

    private void button1_Click(object sender, EventArgs e) { //创建一个工作薄 HSSFWorkbook wk = new HSSFWorkboo ...

  5. NPOI之Excel——设置单元格背景色

    NPOI Excel 单元格颜色对照表,在引用了 NPOI.dll 后可通过 ICellStyle 接口的 FillForegroundColor 属性实现 Excel 单元格的背景色设置,FillP ...

  6. Response输出excel设置文本样式

    在网上查了些Response导出excel然后设置样式的方法,发现没有一个可行的于是开始自己研究, 发现可以通过输出样式的方式进行配置,我要设置的是全文本格式在excel样式是这样的mso-numbe ...

  7. NPOI创建Excel批注

    var hssfWorkbook = new HSSFWorkbook(); var sheet = hssfWorkbook.CreateSheet(); var patr = sheet.Crea ...

  8. 使用NPOI创建Excel文件

    Public Sub BuildExcel() '写入内容到Excel Dim hssfworkbook As HSSFWorkbook = WriteExcel() Dim destFileName ...

  9. C#使用NPOI导出excel设置单元格背景颜色

    ICellStyle cellStyle = workbook.CreateCellStyle(); cellStyle.FillPattern = FillPattern.SolidForegrou ...

随机推荐

  1. PHP:第四章——PHP数组转换,统计,相关函数

    <pre> <?php //数组转换,统计,相关函数 header("Content-Type:text/html;charset=utf-8"); //coun ...

  2. httpclient cookie使用介绍

    COOKIE的处理 session的保持是通过cookie来维持的,所以如果用户有勾选X天免登陆,这个session就X天内一直有效,就是通过这个cookie来维持. 如果没有选中x天免登陆,基本上就 ...

  3. win7激活之系统保留分区的设置与隐藏

    激活动具:WIN7Activation_1.7 步骤: 1.直接点激活 2.若提示需设置驱动器号: 右键计算机-管理-磁盘管理-系统保留上点右键-更改驱动器号和路径-添加-点确定即可 3.激活win7 ...

  4. L220

    He must not allow this unusual barrier (obstacle) to stop him from fighting against the enemy.他绝不能让这 ...

  5. UITableView简述

    原帖:http://blog.csdn.net/totogo2010/article/details/7642908 Table View简单描述: 在iPhone和其他iOS的很多程序中都会看到Ta ...

  6. windows form参数传递过程

    三.windows form参数传递过程 在Windows 程序设计中参数的传递,同样也是非常的重要的. 这里主要是通过带有参数的构造函数来实现的, 说明:Form1为主窗体,包含控件:文本框text ...

  7. Python bool值

    a = 10 print(type(a)) #<class 'int'> d = str(a) #把数字转换成str print(type(d)) #<class 'str'> ...

  8. webstrom git 版本控制

    1.配置 2.用法

  9. 高强度减脂Tabata练习

    每个动作20秒 动作间休息10秒 8个动作为一组 每次做四组 让你大汗淋漓全身酸爽 波比跳 ▼ 跳起箭步蹲 ▼ 登山者 ▼ 俯卧撑 ▼ 卷腹 ▼ 开合跳 ▼ 高抬腿 ▼ 俄罗斯转体 ▼ Bingo ▼ ...

  10. 转:AMD规范与CMD规范的区别是什么?

    AMD规范与CMD规范的区别是什么?    在比较之前,我们得先来了解下什么是AMD规范?什么是CMD规范?当然先申明一下,我个人也是总结下而已,也是网上看到的资料,自己总结下或者可以说整理下而已,供 ...