我写的Asp.net操作Excel的一个类库ExcelHelper(源码下载)
这个类库主要是针对我目前的项目写的,比较乱,没时间整理,这段时间有很多网友问我Asp.net中Excel操作的问题,我这里把我的代码公布给大家,希望对大家有帮助。这个类库没有提供Excel样式设置的方法,建议使用模板,可以在模板中把格式控制好;ExcelHelper提供了实现Excel的基本操作的一些方法,包括:
1、将二维数组和DataTable的数据导入Excel,可以按指定每页的记录行数来分页,还可以将数据相同的行合并
2、WorkSheet的拷贝、隐藏方法,删除操作会出问题,不过对于WorkSheet这两个方法足够了
3、Excel行、列的拷贝、删除、插入、合并操作
4、Excel单元格的拷贝、删除、插入、合并操作,可以将单个文本值写入单元格,也可以将多个值及其对应Excel单元格的位置信息保存在Hashtable中写入单元格
5、Excel文本框赋值操作,一些Excel控件都没有提供访问文本框的方法,要不我也不用写这个类库了
6、将Excel文件导出多种格式
在开发的过程中发现的几个问题:
1、Exce进程结束问题,我目前使用的方法好像对专业版的OS没用,要用ntsd -c q -p pid命令才能结束掉
2、并发问题,如果有两个人同时操作Excel组件的时候就会出错,不知大家有没有好的解决方法,好像使用进程池可以解决这个问题
3、Excel组件访问权限的配置问题,见我以前写的随笔关于在ASP.NET中以DCOM方式操作Excel的几个问题
这个类库有几个方法还有点问题,大家使用过程中有什么问题和改进意见请跟我联系
点这里下载ExcelHelper.rar
posted on 2005-11-07 23:40 lingyun_k 阅读(2439) 评论(15) 编辑 收藏 收藏至365Key 所属分类: DOTNET 、Reports 、BI
View Comments
# re: 我写的Asp.net操作Excel的一个类库ExcelHelper(源码下载) 回复
没仔细看,应该和我的这个相似吧,可能功能没有这么多,当时的想法是够用就行,呵呵……http://waxdoll.cnblogs.com/archive/2005/10/28/264071.html
2005-11-08 00:38 | 蜡人张
# re: 我写的Asp.net操作Excel的一个类库ExcelHelper(源码下载) 回复
COM方式不适合用在ASP.NET中,好像进程经常会出问题!不知道.NET 2005中的VSTO怎么样???
2005-11-08 02:02 | 感觉
# re: 我写的Asp.net操作Excel的一个类库ExcelHelper(源码下载) 回复
关于进程的问题我的同事好像是解决了
方法是主动调用垃圾回收
2005-11-08 08:40 | lost0
# re: 我写的Asp.net操作Excel的一个类库ExcelHelper(源码下载) 回复
不错不错~~~以前也用到,不知道是不是你写的,那个代码比较少是生成excel直接给客户端的,不过这个代码很好,很详细~~希望你再接再励了~~~2005-11-08 08:45 | Riancy
# re: 我写的Asp.net操作Excel的一个类库ExcelHelper(源码下载) 回复
进程需要ntsd -c q -p pid才能结束嘛,好像没这么麻烦的,每次使用释就行了。2005-11-08 08:47 | 福星人
# re: 我写的Asp.net操作Excel的一个类库ExcelHelper(源码下载) 回复
每次一个一个地写excel单元格的效率是不是太慢了,能否考虑一次性将datatable中的数据全部写入?2005-11-08 09:05 | 经霄
# re: 我写的Asp.net操作Excel的一个类库ExcelHelper(源码下载) 回复
与数据库的双向映射是我一直不好解决的问题比如,在EXCEL中删除了一列以后数据库中存储项目的对应的索引问题
2005-11-08 10:19 | Yoko
# re: 我写的Asp.net操作Excel的一个类库ExcelHelper(源码下载) 回复
插入图片:Set myDocument = Worksheets(1)
myDocument.Shapes.AddPicture _
"c:\microsoft office\clipart\music.bmp", _
True, True, 100, 100, 70, 70
2005-11-08 12:15 | 蜡人张
# re: 我写的Asp.net操作Excel的一个类库ExcelHelper(源码下载) 回复
您好,想请教一下如何将excel快速写到一个二维数组;如何确定一个worksheet中的现存数据的行数和列数,谢谢,我的地址:wjfksblk@hotmail.com2006-01-04 10:18 | wangjianfeng
# re: 我写的Asp.net操作Excel的一个类库ExcelHelper(源码下载) 回复
Excel.Range rng = Excel.Worksheet.get_range("A1","G9");object[,] objs = (object[,])rng.Value2;
注意:数组objs的索引从1开始
2006-01-04 13:34 | kly
# re: 我写的Asp.net操作Excel的一个类库ExcelHelper(源码下载) 回复
https://files.cnblogs.com/lingyun_k/ExcelHelper.rar2006-03-06 17:28 | kly