如何用ASP操作Excel

 

  本栏目相关搜索:www.sy15168.cn|中国商业网|商业网|商业网站|神州商业网|商业网站sy15168|资讯中心|新闻频道
如何用ASP操作Excel
神州商业网   2012-11-29 18:38:11 作者:SystemMaster 来源: 文字大小:[][][]

目录
  一、环境配置
  二、ASP对Excel的基本操作
  三、ASP操作Excel生成数据表
  四、ASP操作Excel生成Chart图
  五、服务器端Excel文件浏览、下载、删除方案
  六、附录正文
  一、环境配置
  服务器端的环境配置从参考资料上看,微软系列的配置应该都行,即:
  1.Win9x+PWS+Office
  2.Win2000Professional+PWS+Office
  3.Win2000Server+IIS+Office
  目前笔者测试成功的环境是后二者。Office的版本没有特殊要求,考虑到客户机配置的不确定性和下兼容特性,建议服务器端Office版本不要太高,以防止客户机下载后无法正确显示。
  服务器端环境配置还有两个偶然的发现是:
  1.笔者开发机器上原来装有金山的WPS2002,结果Excel对象创建始终出现问题,卸载WPS2002后,错误消失。
  2.笔者开发ASP代码喜欢用FrontPage,结果发现如果FrontPage打开(服务器端),对象创建出现不稳定现象,时而成功时而不成功。扩展考察后发现,Office系列的软件如果在服务器端运行,则Excel对象的创建很难成功。
  服务器端还必须要设置的一点是COM组件的操作权限。在命令行键入“DCOMCNFG”,则进入COM组件配置界面,选择MicrosoftExcel后点击属性按钮,将三个单选项一律选择自定义,编辑中将Everyone加入所有权限。保存完毕后重新启动服务器。
  客户端的环境配置没发现什么特别讲究的地方,只要装有Office和IE即可,版本通用的好象都可以。二、ASP对Excel的基本操作
  1、建立Excel对象
  setobjExcelApp=CreateObject("Excel.Application")
  objExcelApp.DisplayAlerts=false不显示警告
  objExcelApp.Application.Visible=false不显示界面
  2、新建Excel文件
  objExcelApp.WorkBooks.add
  setobjExcelBook=objExcelApp.ActiveWorkBook
  setobjExcelSheets=objExcelBook.Worksheets
  setobjExcelSheet=objExcelBook.Sheets(1)
  3、读取已有Excel文件
  strAddr=Server.MapPath(".")
  objExcelApp.WorkBooks.Open(strAddr&"\Templet\Table.xls")
  setobjExcelBook=objExcelApp.ActiveWorkBook
  setobjExcelSheets=objExcelBook.Worksheets
  setobjExcelSheet=objExcelBook.Sheets(1)
  4、另存Excel文件
  objExcelBook.SaveAsstrAddr&"\Temp\Table.xls"
  5、保存Excel文件
  objExcelBook.Save(笔者测试时保存成功,页面报错。)
  6、退出Excel操作
  objExcelApp.Quit一定要退出
  setobjExcelApp=Nothing三、ASP操作Excel生成数据表
  1、在一个范围内插入数据
  objExcelSheet.Range("B3:k3").Value=Array("67","87","5","9","7","45","45","54","54","10")
  2、在一个单元格内插入数据
  objExcelSheet.Cells(3,1).Value="InternetExplorer"
  3、选中一个范围
  4、单元格左边画粗线条
  5、单元格右边画粗线条
  6、单元格上边画粗线条
  7、单元格下边画粗线条
  8、单元格设定背景色
  9、合并单元格
  10、插入行
  11、插入列四、ASP操作Excel生成Chart图
  1、创建Chart图
  objExcelApp.Charts.Add
  2、设定Chart图种类
  objExcelApp.ActiveChart.ChartType=97
  注:二维折线图,4;二维饼图,5;二维柱形图,51
  3、设定Chart图标题
  objExcelApp.ActiveChart.HasTitle=True
  objExcelApp.ActiveChart.ChartTitle.Text="AtestChart"
  4、通过表格数据设定图形
  objExcelApp.ActiveChart.SetSourceDataobjExcelSheet.Range("A1:k5"),1
  5、直接设定图形数据(推荐)
  objExcelApp.ActiveChart.SeriesCollection.NewSeries
  objExcelApp.ActiveChart.SeriesCollection(1).Name="=""333"""
  objExcelApp.ActiveChart.SeriesCollection(1).Values="={1,4,5,6,2}"
  6、绑定Chart图
  objExcelApp.ActiveChart.Location1
  7、显示数据表
  objExcelApp.ActiveChart.HasDataTable=True
  8、显示图例
  objExcelApp.ActiveChart.DataTable.ShowLegendKey=True五、服务器端Excel文件浏览、下载、删除方案
  浏览的解决方法很多,“Location.href=”,“Navigate”,“Response.Redirect”都可以实现,建议用客户端的方法,原因是给服务器更多的时间生成Excel文件。
  下载的实现要麻烦一些。用网上现成的服务器端下载组件或自己定制开发一个组件是比较好的方案。另外一种方法是在客户端操作Excel组件,由客户端操作服务器端Excel文件另存至客户端。这种方法要求客户端开放不安全ActiveX控件的操作权限,考虑到通知每个客户将服务器设置为可信站点的麻烦程度建议还是用第一个方法比较省事。
  删除方案由三部分组成:
  A:同一用户生成的Excel文件用同一个文件名,文件名可用用户ID号或SessionID号等可确信不重复字符串组成。这样新文件生成时自动覆盖上一文件。
  B:在Global.asa文件中设置Session_onEnd事件激发时,删除这个用户的Excel暂存文件。
  C:在Global.asa文件中设置Application_onStart事件激发时,删除暂存目录下的所有文件。
  注:建议目录结构\Src代码目录\Templet模板目录\Temp暂存目录六、附录
  出错时Excel出现的死进程出现是一件很头疼的事情。在每个文件前加上“OnErrorResumeNext”将有助于改善这种情况,因为它会不管文件是否产生错误都坚持执行到“Application.Quit”,保证每次程序执行完不留下死进程。
  补充两点:
  1、其他Excel具体操作可以通过录制宏来解决。
  2、服务器端打开SQL企业管理器也会产生问题。




上一篇文章:  HTML的七种加密解密方法
下一篇文章:  3d软件玛雅和3DMAX的区别

分享到:
最新评论
发表评论
标题
内容
表情
 
 分类导航:
网络动态  (410)
焦点人物  (211)
技术杂谈  (606)
商业新闻  (25)
名词与诠释  (5)
财经视频资讯  (10)
社会视频资讯  (85)
 最新资讯:
    ◆  2023年新年 [1/1]
    ◆  阿根廷夺冠20 [12/29]
    ◆  第三届中国资管 [12/29]
    ◆  疫情过后美国通 [12/29]
    ◆  孙颖莎2022 [12/29]
    ◆  习近平指引农业 [12/27]
    ◆  河南郑州某商场 [12/26]
    ◆  中国经济增速将 [12/9]
    ◆  设置自动同步时 [5/29]
    ◆  西门子PCAc [11/7]
    ◆  解决VB添加I [10/7]
    ◆  大话西游2经典 [3/23]
    ◆  大话西游2经典 [3/23]
    ◆  2019年食品 [1/17]
    ◆  2019世乒赛 [4/21]
更多
 企业黄页:
    ◆  孔老师乒乓球 [4/20]
    ◆  乐宇乒乓球俱 [4/18]
    ◆  友谊乒乓球俱 [4/18]
    ◆  深圳市威图科 [12/29]
    ◆  烟台海特林自 [12/29]
    ◆  杭州虹炫网络 [12/26]
    ◆  新乡县玉强振 [12/18]
    ◆  衡水瑞隆矿山 [1/28]
    ◆  广州领嘉包装 [1/28]
    ◆  东莞市塘厦锦 [1/28]
    ◆  太原市福佳林 [1/26]
    ◆  河北省任丘市 [1/26]
    ◆  沧州起航拓展 [1/26]
    ◆  佛山市铧睿科 [1/26]
    ◆  宁波友利工业 [1/25]
更多
关于我们 联系方式 推广效果 全站搜索 网站留言 网站声明 网址导航 企业黄页申请 申请友情链接

神州商业网
联系邮箱:xn0216@163.com
网站地图
Copyright © 2009-2017 神州商业网 版权所有
商业网_中国商业网_商业网站