CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
花落谁家,你作主! 盛大widget设计大赛英雄榜
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Web 开发 >  ASP

ASP导出Excel数据的四种方法(连载)

楼主pipinono(搞定问题)2005-04-04 06:08:22 在 Web 开发 / ASP 提问

在http://www.weblogic.com.cn看了篇文章,转贴过来^_^大家也可以直接去http://www.weblogic.com.cn看完,这不允许贴太多,那的东东也不少,还可以申请xxx@weblogic.com.cn的邮箱^_^……  
   
  一、使用OWC    
    什么是OWC?    
    OWC是Office   Web   Compent的缩写,即Microsoft的Office   Web组件,它为在Web中绘制图形提供了灵活的同时也是最基本的机制。在一个intranet环境中,如果可以假设客户机上存在特定的浏览器和一些功能强大的软件(如IE5和Office   2000),那么就有能力利用Office   Web组件提供一个交互式图形开发环境。这种模式下,客户端工作站将在整个任务中分担很大的比重。    
  <%    
  Option   Explicit    
  Class   ExcelGen    
  Private   objSpreadsheet    
  Private   iColOffset    
  Private   iRowOffset    
   
   
   
  Sub   Class_Initialize()    
  Set   objSpreadsheet   =   Server.CreateObject("OWC.Spreadsheet")    
  iRowOffset   =   2    
  iColOffset   =   2    
  End   Sub    
   
   
   
  Sub   Class_Terminate()    
  Set   objSpreadsheet   =   Nothing   "Clean   up    
  End   Sub    
   
   
   
  Public   Property   Let   ColumnOffset(iColOff)    
  If   iColOff   >   0   then    
  iColOffset   =   iColOff    
  Else    
  iColOffset   =   2    
  End   If    
  End   Property    
   
   
   
  Public   Property   Let   RowOffset(iRowOff)    
  If   iRowOff   >   0   then    
  iRowOffset   =   iRowOff    
  Else    
  iRowOffset   =   2    
  End   If    
  End   Property   Sub   GenerateWorksheet(objRS)    
  "Populates   the   Excel   worksheet   based   on   a   Recordset"s   contents    
  "Start   by   displaying   the   titles    
  If   objRS.EOF   then   Exit   Sub    
  Dim   objField,   iCol,   iRow    
  iCol   =   iColOffset    
  iRow   =   iRowOffset    
  For   Each   objField   in   objRS.Fields    
  objSpreadsheet.Cells(iRow,   iCol).Value   =   objField.Name    
  objSpreadsheet.Columns(iCol).AutoFitColumns    
  "设置Excel表里的字体    
  objSpreadsheet.Cells(iRow,   iCol).Font.Bold   =   True    
  objSpreadsheet.Cells(iRow,   iCol).Font.Italic   =   False    
  objSpreadsheet.Cells(iRow,   iCol).Font.Size   =   10    
  objSpreadsheet.Cells(iRow,   iCol).Halignment   =   2   "居中    
  iCol   =   iCol   +   1    
  Next   "objField    
  "Display   all   of   the   data    
  Do   While   Not   objRS.EOF    
  iRow   =   iRow   +   1    
  iCol   =   iColOffset    
  For   Each   objField   in   objRS.Fields    
  If   IsNull(objField.Value)   then    
  objSpreadsheet.Cells(iRow,   iCol).Value   =   ""    
  Else    
  objSpreadsheet.Cells(iRow,   iCol).Value   =   objField.Value    
  objSpreadsheet.Columns(iCol).AutoFitColumns    
  objSpreadsheet.Cells(iRow,   iCol).Font.Bold   =   False    
  objSpreadsheet.Cells(iRow,   iCol).Font.Italic   =   False    
  objSpreadsheet.Cells(iRow,   iCol).Font.Size   =   10    
  End   If    
  iCol   =   iCol   +   1    
  Next   "objField    
  objRS.MoveNext    
  Loop    
  End   Sub   Function   SaveWorksheet(strFileName)    
   
   
   
  "Save   the   worksheet   to   a   specified   filename    
  On   Error   Resume   Next    
  Call   objSpreadsheet.ActiveSheet.Export(strFileName,   0)    
  SaveWorksheet   =   (Err.Number   =   0)    
  End   Function    
  End   Class    
   
   
   
  Dim   objRS    
  Set   objRS   =   Server.CreateObject("ADODB.Recordset")    
  objRS.Open   "SELECT   *   FROM   xxxx",   "Provider=SQLOLEDB.1;Persist   Security    
   
   
   
  Info=True;User   ID=xxxx;Password=xxxx;Initial   Catalog=xxxx;Data   source=xxxx;"    
  Dim   SaveName    
  SaveName   =   Request.Cookies("savename")("name")    
  Dim   objExcel    
  Dim   ExcelPath    
  ExcelPath   =   "Excel\"   &   SaveName   &   ".xls"    
  Set   objExcel   =   New   ExcelGen    
  objExcel.RowOffset   =   1    
  objExcel.ColumnOffset   =   1    
  objExcel.GenerateWorksheet(objRS)    
  If   objExcel.SaveWorksheet(Server.MapPath(ExcelPath))   then    
  "Response.Write   "<html><body   bgcolor="gainsboro"   text="#000000">已保存为Excel文件.    
   
   
   
  <a   href=""   &   server.URLEncode(ExcelPath)   &   "">下载</a>"    
  Else    
  Response.Write   "在保存过程中有错误!"    
  End   If    
  Set   objExcel   =   Nothing    
  objRS.Close    
  Set   objRS   =   Nothing    
  %>      
   
  (未完待续……)大家也可以直接去http://www.weblogic.com.cn看完…… 问题点数:0、回复次数:17Top

1 楼goodstuday(路漫漫)回复于 2005-04-04 09:05:22 得分 0

好东西  
  收藏了Top

2 楼poonzsp(怒放的生命)回复于 2005-04-04 09:06:23 得分 0

upTop

3 楼TSD(智之选,商欲达--智商购物系统zhishop.com)回复于 2005-04-04 09:19:58 得分 0

MARKTop

4 楼zwrtv(蝙蝠)回复于 2005-04-04 09:40:08 得分 0

收藏Top

5 楼18687874(别拿苹果扔我)回复于 2005-04-04 10:02:05 得分 0

MARKTop

6 楼sandyxxx(一天到晚游泳的鱼)回复于 2005-04-04 10:25:16 得分 0

支持!!!Top

7 楼underone(再看抽你小丫的)回复于 2005-04-04 10:33:56 得分 0

UpTop

8 楼sportdog(会编程的流氓狗)回复于 2005-04-04 10:47:22 得分 0

..Top

9 楼iasky(iasky)回复于 2005-04-04 10:51:42 得分 0

markTop

10 楼thomasking()回复于 2005-04-04 11:25:14 得分 0

MARKSTop

11 楼yjbnew(伟大的光荣的正确的ASP千岁千岁千千岁)回复于 2005-04-04 12:02:05 得分 0

upTop

12 楼wangyanyan(不犯错误,一定会错,因为不犯错误的人一定没有去尝试。)回复于 2005-04-04 14:03:04 得分 0

upTop

13 楼gilbert007(西索)回复于 2005-04-04 15:17:42 得分 0

总有一天会用到!Top

14 楼kincky(kincky)回复于 2005-04-04 15:38:14 得分 0

markTop

15 楼huahaoyueyuan(花好月圆)回复于 2005-04-04 16:11:05 得分 0

收藏Top

16 楼itzhiren(itzhiren)回复于 2005-04-04 17:01:14 得分 0

收藏Top

17 楼raas(朗仕)回复于 2005-04-04 17:12:37 得分 0

upTop

相关问题

  • ASP导出EXCEL问题
  • ASP里面做Excel导出,急,100分
  • ASP导出EXCEL出现问题!
  • asp能不能实现导出到EXCEL?
  • asp excel 导出空格处理问题
  • 导出到excel
  • 导出EXCEL
  • 导出到EXCEL
  • 将Excel用ASP导入及将数据导出为Excel详解
  • 使用asp怎样将数据导出到excel文件

关键词

  • web组件
  • 图形
  • office
  • weblogic
  • owc
  • 环境
  • 提供
  • cn看
  • www

得分解答快速导航

  • 帖主:pipinono

相关链接

  • Web开发类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo