前两天用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. splunk中mongodb作用——存用户相关数据如会话、搜索结果等

    About the app key value store The app key value store (or KV store) provides a way to save and retri ...

  2. java并发编程:线程安全管理类--原子操作类--AtomicMarkableReference<V>

    1.类 AtomicMarkableReference<V> public class AtomicMarkableReference<V>extends Object Ato ...

  3. POJ 1754 线段树

    e,应该是线段树里的水题.线段树单点更新.查询区间最值. 代码套用模板 PS :模板有些地方不太懂. #include<stdio.h>#include<iostream>#i ...

  4. linux page allocation and deallocation

      All of the physical pages in the system are described by the mem_map  data structure which is a li ...

  5. C#中使用Spire.docx操作Word文档

    使用docx一段时间之后,一些地方还是不方便,然后就尝试寻找一种更加简便的方法. 之前有尝试过使用Npoi操作word表格,但是太烦人了,随后放弃,然后发现免费版本的spire不错,并且在莫种程度上比 ...

  6. Oracle/MySQL decimal/int/number 转字符串

    有时客户需要流水数据,当导出为excel的时候,客户编号等很长数字的栏位,被excel变成科学记数法,无法正常查看. 因此,需要将Oracle/MySQL中的decimal/int 转 varchar ...

  7. 软工作业No.6 甜美女孩第四周

    各成员在Alpha阶段认领的任务 成员 Alpha阶段认领的任务 整个项目预期的任务量 曾祎祺 安排每日任务,每晚总结 16% 邓画月 基础2048+自定义 16% 梁佩诗 负责界面 16% 何颖琪 ...

  8. CreateFile DeviceIoControl dwIoControlCode——应用程序与驱动程序通信

    在“进程内存管理器中”的一个Ring0,Ring3层通信问题,之前也见过这样的代码,这次拆分出来详细总结一下. 先通过CreateFile函数得到设备句柄,CreateFile函数原型: HANDLE ...

  9. 使用API接口在zabbix系统中登陆、创建、删除agent

    一.API的介绍 API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力 ...

  10. Python学习(007)-函数的特性

    一..函数是什么 定义: 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可 特性: 1.代码重用 2.保持一致性 3.可扩展性 二.创建 2.1格式 de ...