• 在.NET中用excel导出(概要)


     首先要在项目->添加引用->COM中添加Microsoft Office Web Components ,然后定义一个OWC.SpreadsheetClass 如:Dim xlsheet As New OWC.SpreadsheetClass 然后就可以向sheet中添加数据了,使用xlsheet.Cells(2, 2) = "表格填充内容" 格式添加数据,使用xlsheet.Range("B3:F3") 设置单元格的样式。
     最后用xlsheet.ActiveSheet.Export(Path, OWC.SheetExportActionEnum.ssExportActionNone) 的方式将excel文件保存在硬盘上。
     这种方法优点是无需系统权限分配,缺点是对于单元格的格式属性设置不够丰富,某些属性无法设置或者是设置比较麻烦。
    2.用Excel Application
     用这种方法之前首先要给aspnet用户设置权限,否则程序会不能执行的。设置权限的过程如下:
     在运行处运行“dcomcnfg.exe”启动“分布式COM配置属性”
     在应用程序列表框中双击“Microsoft Excel 应用程序”
     选择“安全性”标签
     选择“使用自定义访问权限”单选框,点击“编辑”按钮
     添加本地“ASPNET”用户,权限为“允许访问”
     在“安全性”标签中选择“使用自定义启动权限”单选框,点击“编辑”按钮
     添加本地“ASPNET”用户,权限为“允许访问”
     以上工作在需要执行excel导出的服务器上进行一次即可。
     以后在每个工程中要选择“项目->添加引用中选择“COM”标签,添加“Microsoft Excel x.x Object Library”到 项目中,以后就可以执行excel导出操作了。
     在需要导出的时候首先定义一下excel application、excel Workbooks、excel Worksheets变量:
    Dim excelApp As Excel.Application
    Dim excelBook As Excel.Workbook
    Dim excelSheet As Excel.Worksheet
    excelApp = New Excel.Application
    excelBook = excelApp.Workbooks.Add
    excelSheet = excelBook.Worksheets(1)
    之后就可以将数据放入excel Sheet中了,而且可以方便的设置单元格的各个属性参数。比如,设置行高可以用excelSheet.Rows(intRowIndex).RowHeight = dblRowHeight
    用这种方法可以实现几乎全部的excel功能,如果对于某个功能不知道用excel application如何实现,可以在excel中通过“记录宏-执行操作-查看宏代码”的方法得到实现该功能所用到的属性和方法。
    最后要将数据保存到硬盘上,只需用excelBook.SaveAs(FileName)方法即可。
    这种方法的优点是功能强大,可以实现几乎所有的excel功能。缺点是需要权限配置,而且运行时间比较长,占用资源比较高,结束后可能在系统中有残留的EXCEL进程。
    3.直接存为文本文件
    直接将数据按照html表格的格式存为文本文件,扩展名改成xls就可以用excel打开,或者按照Office XP之后支持的xml格式,这种格式所能实现的功能同样强大,缺点就是需要知道各种功能或者excel单元格格式的xml表达方法,工作量比较大。
    这种方法优点是不需要权限配置(只需能够向硬盘写文件的权限就可以),执行速度快。缺点是需要知道大量的excel格式的xml或者html表达方式,前期准备工作量大。  首先要在项目->添加引用->COM中添加Microsoft Office Web Components ,然后定义一个OWC.SpreadsheetClass 如:Dim xlsheet As New OWC.SpreadsheetClass 然后就可以向sheet中添加数据了,使用xlsheet.Cells(2, 2) = "表格填充内容" 格式添加数据,使用xlsheet.Range("B3:F3") 设置单元格的样式。
     最后用xlsheet.ActiveSheet.Export(Path, OWC.SheetExportActionEnum.ssExportActionNone) 的方式将excel文件保存在硬盘上。
     这种方法优点是无需系统权限分配,缺点是对于单元格的格式属性设置不够丰富,某些属性无法设置或者是设置比较麻烦。
    2.用Excel Application
     用这种方法之前首先要给aspnet用户设置权限,否则程序会不能执行的。设置权限的过程如下:
     在运行处运行“dcomcnfg.exe”启动“分布式COM配置属性”
     在应用程序列表框中双击“Microsoft Excel 应用程序”
     选择“安全性”标签
     选择“使用自定义访问权限”单选框,点击“编辑”按钮
     添加本地“ASPNET”用户,权限为“允许访问”
     在“安全性”标签中选择“使用自定义启动权限”单选框,点击“编辑”按钮
     添加本地“ASPNET”用户,权限为“允许访问”
     以上工作在需要执行excel导出的服务器上进行一次即可。
     以后在每个工程中要选择“项目->添加引用中选择“COM”标签,添加“Microsoft Excel x.x Object Library”到 项目中,以后就可以执行excel导出操作了。
     在需要导出的时候首先定义一下excel application、excel Workbooks、excel Worksheets变量:
    Dim excelApp As Excel.Application
    Dim excelBook As Excel.Workbook
    Dim excelSheet As Excel.Worksheet
    excelApp = New Excel.Application
    excelBook = excelApp.Workbooks.Add
    excelSheet = excelBook.Worksheets(1)
    之后就可以将数据放入excel Sheet中了,而且可以方便的设置单元格的各个属性参数。比如,设置行高可以用excelSheet.Rows(intRowIndex).RowHeight = dblRowHeight
    用这种方法可以实现几乎全部的excel功能,如果对于某个功能不知道用excel application如何实现,可以在excel中通过“记录宏-执行操作-查看宏代码”的方法得到实现该功能所用到的属性和方法。
    最后要将数据保存到硬盘上,只需用excelBook.SaveAs(FileName)方法即可。
    这种方法的优点是功能强大,可以实现几乎所有的excel功能。缺点是需要权限配置,而且运行时间比较长,占用资源比较高,结束后可能在系统中有残留的EXCEL进程。
    3.直接存为文本文件
    直接将数据按照html表格的格式存为文本文件,扩展名改成xls就可以用excel打开,或者按照Office XP之后支持的xml格式,这种格式所能实现的功能同样强大,缺点就是需要知道各种功能或者excel单元格格式的xml表达方法,工作量比较大。
    这种方法优点是不需要权限配置(只需能够向硬盘写文件的权限就可以),执行速度快。缺点是需要知道大量的excel格式的xml或者html表达方式,前期准备工作量大。
  • 相关阅读:
    面向对象的分析与设计
    Django的ORM补充
    JDBC数据库连接池
    Python 中的深浅拷贝
    智能机系统分析
    hyperf框架学习
    HTTP协议知识
    百度知道有关php抓取问题
    awk之FS的指定
    从DELPHI到JAVA[delphi]
  • 原文地址:https://www.cnblogs.com/shf/p/994700.html
Copyright © 2020-2023  润新知