NET操作EXCEL类_第1页
NET操作EXCEL类_第2页
NET操作EXCEL类_第3页
NET操作EXCEL类_第4页
NET操作EXCEL类_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、asp.netexcel操作类(2010-04-18 14:54:50) 转载标签: netexcel操作类杂谈分类: 技术文档 首先添加com中的excel插件。要在服务器安装office。本例中是office 2003实现例子:namespace demo public partial class webform1 : system.web.ui.page exceledit.exceledit excel = new exceledit.exceledit(); protected void page_load(object sender, eventargs e) if (!page.

2、ispostback) /打开excel excel.open(httpcontext.current.server.mappath(./exceltest.xlt); /获取工作表 excel.worksheet weet = excel.getsheet(sheet1); /写入excel excel.setcellvalue(weet, 1, 2, 1011); /另存为excel excel.saveas(httpcontext.current.server.mappath(./exceltest11.xls); /注销excel进程 excel.close(); protected

3、void button1_click(object sender, eventargs e) /excel生成html /打开excel excel.open(httpcontext.current.server.mappath(./exceltest.xlt); /另存为excel excel.saveashtml(httpcontext.current.server.mappath(./aa.html); /注销excel进程 excel.close(); /转向新生成的页面 response.redirect(./aa.html); excel操作类:using system; usin

4、g system.data; using system.configuration; using system.web; using system.web.security; using system.web.ui; using system.web.ui.webcontrols; using system.web.ui.webcontrols.webparts; using system.web.ui.htmlcontrols; /using microsoft.office.interop; using microsoft.office.core; namespace exceledit

5、/ / excel操作类 / public class exceledit public string mfilename; public excel.application app; public excel.workbooks wbs; public excel.workbook wb; public excel.worksheets wss; public excel.worksheet ws; public exceledit() / / todo: 在此处添加构造函数逻辑 / / / 创建一个excel对象 / public void create() app = new excel

6、.application(); wbs = app.workbooks; wb = wbs.add(true); / / 打开一个excel文件 / / excel文件路径及名称 public void open(string filename) app = new excel.application(); wbs = app.workbooks; wb = wbs.add(filename); mfilename = filename; / / 获取一个工作表 / / 工作表名称 / excel工作表 public excel.worksheet getsheet(string sheetn

7、ame) excel.worksheet s = (excel.worksheet)wb.worksheetssheetname; return s; / / 添加一个工作表 / / 工作表名称 / excel工作表 public excel.worksheet addsheet(string sheetname) excel.worksheet s = (excel.worksheet)wb.worksheets.add(type.missing, type.missing, type.missing, type.missing); s.name = sheetname; return s;

8、 / / 删除一个工作表 / / 工作表名称 public void delsheet(string sheetname) (excel.worksheet)wb.worksheetssheetname).delete(); / / 重命名一个工作表 / / 要改名的工作表 / 工作表新名称 / 工作表 public excel.worksheet renamesheet(string oldsheetname, string newsheetname) excel.worksheet s = (excel.worksheet)wb.worksheetsoldsheetname; s.name

9、 = newsheetname; return s; / / 重命名一个工作表 / / excel工作表实例 / 新命名的工作表 / excel工作表 public excel.worksheet renamesheet(excel.worksheet sheet, string newsheetname) sheet.name = newsheetname; return sheet; / / 设置工作表的值 / / 要设值的工作表 / 行 / 列 / 要设置的值 public void setcellvalue(excel.worksheet ws, int x, int y, objec

10、t value) ws.cellsx, y = value; / / 设置工作表的值 / / 工作表的名称 / 行 / 列 / 要设置的值 public void setcellvalue(string ws, int x, int y, object value) getsheet(ws).cellsx, y = value; / / 设置工作表的值 / / 工作表 / 开始的行 / 开始的列 / 结束的行 / 结束的列 / 大小 / 字体名称 / 颜色 / 对齐方式 public void setcellproperty(excel.worksheet ws, int startx, in

11、t starty, int endx, int endy, int size, string name, excel.constants color, excel.constants horizontalalignment)/设置一个单元格的属性 字体, 大小,颜色 ,对齐方式 name = 宋体 ; size = 12; color = excel.constants.xlautomatic; horizontalalignment = excel.constants.xlright; ws.get_range(ws.cellsstartx, starty, ws.cellsendx, en

12、dy).font.name = name; ws.get_range(ws.cellsstartx, starty, ws.cellsendx, endy).font.size = size; ws.get_range(ws.cellsstartx, starty, ws.cellsendx, endy).font.color = color; ws.get_range(ws.cellsstartx, starty, ws.cellsendx, endy).horizontalalignment = horizontalalignment; / / 设置工作表的值 / / 工作表的名称 / 开

13、始的行 / 开始的列 / 结束的行 / 结束的列 / 大小 / 字体名称 / 颜色 / 对齐方式 public void setcellproperty(string wsn, int startx, int starty, int endx, int endy, int size, string name, excel.constants color, excel.constants horizontalalignment) /name = 宋体 ; /size = 12; /color = excel.constants.xlautomatic; /horizontalalignment

14、= excel.constants.xlright; excel.worksheet ws = getsheet(wsn); ws.get_range(ws.cellsstartx, starty, ws.cellsendx, endy).font.name = name; ws.get_range(ws.cellsstartx, starty, ws.cellsendx, endy).font.size = size; ws.get_range(ws.cellsstartx, starty, ws.cellsendx, endy).font.color = color; ws.get_ran

15、ge(ws.cellsstartx, starty, ws.cellsendx, endy).horizontalalignment = horizontalalignment; / / 合并单元格 / / 工作表 / 开始的行 / 开始的列 / 结束的行 / 结束的列 public void unitecells(excel.worksheet ws, int x1, int y1, int x2, int y2) ws.get_range(ws.cellsx1, y1, ws.cellsx2, y2).merge(type.missing); / / 合并单元格 / / 工作表名称 / 开

16、始的行 / 开始的列 / 结束的行 / 结束的列 public void unitecells(string ws, int x1, int y1, int x2, int y2) getsheet(ws).get_range(getsheet(ws).cellsx1, y1, getsheet(ws).cellsx2, y2).merge(type.missing); / / 将表格插入到excel的指定工作表指定位置 / / datatable / 工作表名称 / 开始行 / 开始列 public void inserttable(system.data.datatable dt, str

17、ing ws, int startx, int starty) for (int i = 0; i = dt.rows.count - 1; i+) for (int j = 0; j = dt.columns.count - 1; j+) getsheet(ws).cellsstartx + i, j + starty = dt.rowsij.tostring(); / / 将表格插入到excel的指定工作表指定位置 / / datatable / 工作表 / 开始行 / 开始列 public void inserttable(system.data.datatable dt, excel.

18、worksheet ws, int startx, int starty) for (int i = 0; i = dt.rows.count - 1; i+) for (int j = 0; j = dt.columns.count - 1; j+) ws.cellsstartx + i, j + starty = dt.rowsij; / / datatable表格添加到excel指定工作表的指定位置 / / datatable / 工作表名称 / 开始行 / 开始列 public void addtable(system.data.datatable dt, string ws, int

19、 startx, int starty) for (int i = 0; i = dt.rows.count - 1; i+) for (int j = 0; j = dt.columns.count - 1; j+) getsheet(ws).cellsi + startx, j + starty = dt.rowsij; / / datatable表格添加到excel指定工作表的指定位置 / / datatable / 工作表 / 开始行 / 开始列 public void addtable(system.data.datatable dt, excel.worksheet ws, int

20、 startx, int starty) for (int i = 0; i = dt.rows.count - 1; i+) for (int j = 0; j = dt.columns.count - 1; j+) ws.cellsi + startx, j + starty = dt.rowsij; / / 将图片插入到工作表中 / / 图片 / 工作表 public void insertpictures(string filename, string ws) getsheet(ws).shapes.addpicture(filename, msotristate.msofalse,

21、msotristate.msotrue, 10, 10, 150, 150);/后面的数字表示位置 public void insertactivechart(excel.xlcharttype charttype, string ws, int datasourcesx1, int datasourcesy1, int datasourcesx2, int datasourcesy2, excel.xlrowcol chartdatatype)/插入图表操作 chartdatatype = excel.xlrowcol.xlcolumns; wb.charts.add(type.missin

22、g, type.missing, type.missing, type.missing); wb.activechart.charttype = charttype; wb.activechart.setsourcedata(getsheet(ws).get_range(getsheet(ws).cellsdatasourcesx1, datasourcesy1, getsheet(ws).cellsdatasourcesx2, datasourcesy2), chartdatatype); wb.activechart.location(excel.xlchartlocation.xllocationasobject, ws); / / 保存文档 / / 是否保存成功 public bool save() if (mfilename = ) return false; else try wb.save(); return true; catch (exception ex) return false; / / 文档的另存为 / / 另存为名称 / 是否保存成功 public bool saveas(object filename)/文档另存为 try wb.saveas(httpcontext.current.server.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论