asp.net Npoi 使用
HSSFWorkbook hssfworkbook = new HSSFWorkbook(); //增加 Excel
NPOI.SS.UserModel.ISheet SheetName = hssfworkbook.CreateSheet(Dr_Subject["SubjectName"].ToString());//增加 Sheet
NPOI.SS.UserModel.IRow SheetRows = SheetName.CreateRow(RowCount); //行
NPOI.SS.UserModel.ICell cell = SheetRows.CreateCell(ColCount);//列
cell.SetCellValue(Dt_Grade.Rows[i]["GradeName"].ToString() + "排班");//值
NPOI.SS.Util.CellRangeAddress cellRangeAddress = new NPOI.SS.Util.CellRangeAddress(rowstart, rowend, colstart, colend);//合并单元格
sheet.AddMergedRegion(cellRangeAddress);//合并单元格
SheetRows.GetCell(ColCount).CellStyle = CellStyle() //设置样式
private NPOI.SS.UserModel.ICellStyle CellStyle()
{
NPOI.SS.UserModel.ICellStyle style = hssfworkbook.CreateCellStyle();//单元格的样式
NPOI.SS.UserModel.IFont font = hssfworkbook.CreateFont();//单元格的字体 font.FontName = "<SPAN style='COLOR: #faebde'>'宋体'</SPAN>";
font.FontHeightInPoints = 10;
font.Boldweight = (short)NPOI.SS.UserModel.FontBoldWeight.BOLD; style.SetFont(font);//单元格的字体 style.Alignment = NPOI.SS.UserModel.HorizontalAlignment.CENTER;//水平居中
style.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.CENTER;//垂直居中 Color LevelOneColor = Color.FromArgb(255, 153, 0);
style.FillPattern = NPOI.SS.UserModel.FillPatternType.SOLID_FOREGROUND;//填充
style.FillForegroundColor = GetXLColour(hssfworkbook, LevelOneColor); //调用GetXLColour方法 //有边框
style.BorderBottom = NPOI.SS.UserModel.CellBorderType.THIN;
style.BorderLeft = NPOI.SS.UserModel.CellBorderType.THIN;
style.BorderTop = NPOI.SS.UserModel.CellBorderType.THIN;
style.BorderRight = NPOI.SS.UserModel.CellBorderType.THIN;
SheetName.SetColumnWidth(Col, 16 * 256);
return style;
}
防止重复添加行
for (int StCount = 0; StCount < Dt_WHF.Rows.Count; StCount++)
{ if (SheetName.GetRow(Xh) == null)//没创建行情况
{
RowSt = SheetName.CreateRow(Xh); //
}
else
{
RowSt = SheetName.GetRow(Xh); //创建行的情况 } Xh = Xh + 1;
RowCount = RowCount + 1; StudentsXuHao = StCount+1; NPOI.SS.UserModel.ICell CellSt_Xuhao = RowSt.CreateCell(0);//这里创建添加列
CellSt_Xuhao.SetCellValue(StudentsXuHao.ToString());//这里设置列值 NPOI.SS.UserModel.ICell CellSt = RowSt.CreateCell(ClassCount + 1);//这里创建添加列
CellSt.SetCellValue(Dt_WHF.Rows[StCount]["StName"].ToString());//这里设置列值 }
asp.net Npoi 使用的更多相关文章
- ASP.NET- 使用NPOI导入导出标准Excel
尝试过很多Excel导入导出方法,都不太理想,无意中逛到oschina时,发现了NPOI,无需Office COM组件且不依赖Office,顿时惊为天人,怀着无比激动的心情写下此文. 曾使用过的方法 ...
- asp.net NPOI导出xlsx格式文件,打开文件报“Excel 已完成文件级验证和修复。此工作簿的某些部分可能已被修复或丢弃”
NPOI导出xlsx格式文件,会出现如下情况: 点击“是”: 导出代码如下: /// <summary> /// 将datatable数据写入excel并下载 /// </summa ...
- NPOI.dll学习
NPOI 是 POI 项目的 .NET 版本.POI是一个开源的Java读写Excel.WORD等微软OLE2组件文档的项目. 简介 编辑 使用 NPOI 你就可以在没有安装 Office 或者相应环 ...
- C#.NET开源项目、机器学习、商务智能
所以原谅我,不能把所有的都发上来,太杂了,反而不好. 1..NET时间周期处理组件 这个组件很小,主要是对时间日期,特别是处理时间间隔以及时间范围非常方便.虽然.NET自带了时间日期的部分功能,但可能 ...
- C# Aspose.Cells导出xlsx格式Excel,打开文件报“Excel 已完成文件级验证和修复。此工作簿的某些部分可能已被修复或丢弃”
报错信息: 最近打开下载的 Excel,会报如下错误.(xls 格式不受影响) 解决方案: 下载代码(红色为新添代码) public void download() { string fileName ...
- 杂项-TOOL:NPIO
ylbtech-杂项-TOOL:NPIO NPOI是指构建在POI 3.x版本之上的一个程序,NPOI可以在没有安装Office的情况下对Word或Excel文档进行读写操作.NPOI是一个开源的Ja ...
- Asp.Net 使用Npoi导出Excel
引言 使用Npoi导出Excel 服务器可以不装任何office组件,昨天在做一个导出时用到Npoi导出Excel,而且所导Excel也符合规范,打开时不会有任何文件损坏之类的提示.但是在做导入时还是 ...
- Asp.net操作Excel(终极方法NPOI)(转)
原文:Asp.net操作Excel(终极方法NPOI) 先去官网:http://npoi.codeplex.com/下载需要引入dll(可以选择.net2.0或者.net4.0的dll),然后在网站中 ...
- ASP.NET导出Excel(利用NPOI和EPPlus库,无需安装Office)
网上提供了很多Asp.net中操作Excel的方法,其中大部分是调用微软的Office组件,下面提供三个无须安装Office即可从Asp.net输出Excel的方法. 1 简单方法 //下面代码输出的 ...
随机推荐
- C++ 单词接龙
问题描述: 拉姆刚刚开始学习英文字母,对单词排序很感兴趣,他能够迅速确定是否可以将这些单词排列在一个列表中,使得该列表中任何单词的首字母与前一个单词的尾字母相同,力能编写一个计算机程序帮助拉姆进行判断 ...
- JAVA基础补漏--文件读取
public class Test2 { public static void main(String[] args) throws IOException { FileInputStream fis ...
- This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery' 解决办法
背景:mysql5.1.36,mybatis 前言:为了解决一对多,分页显示,但是前端主要是显示的一的一方的数据和(多方的某个字段拼接在一起),此时的limit不能直接跟在查询的后面,需要用子查询把需 ...
- 2017 beijing icpc A - Euler theorem
2017-09-22 21:59:43 writer:pprp HazelFan is given two positive integers a,ba,b, and he wants to calc ...
- 把 b中的字段整合到a上
a = [{"id": 1, "data": 1}, {"id": 2, "data": 1}, {"id&q ...
- geoserver源码学习与扩展——restAPI访问
产生这篇文章的想法是在前端通过js调用restAPI时,总是不成功,发送ajax请求时还总是出现类似跨域的问题,后来查找才发现,默认情况下restAPI的访问都需要管理员权限,而通过ajax请求传输用 ...
- Dive into Spring framework -- 了解基本原理(二)--设计模式-part2
Template模式 Template模式顾名思义是提供了一种模板,也就是针对某种业务提供了模范框架.这个在spring中是属于核心模式的,因为其ApplicationContext抽象类就是模板模式 ...
- shell脚本中case select 的使用
#!/bin/bash # case echo "1.Install PHP" echo "2.Install Mysql" echo "3.Inst ...
- git-----初始化配置添加用户名和密码
Git是分布式版本控制系统,GitHub 是最大的 Git 版本库托管商,是成千上万的开发者和项目能够合作进行的中心. 大部分 Git 版本库都托管在 GitHub,很多开源项目使用 GitHub 实 ...
- Java MongoDB插入
前言 插入是向MongoDB中添加数据的基本方法.对目标集使用insert方法来插入一条文档.这个方法会给文档增加一个”_id”属性(如果原来没有的话),然后保存到数据库中. 1.连接数据库,拿到集合 ...