通行证: 用户 密码 域名空间  下载中心 社区论坛 信息公告 my小屋
联系我们
设为首页
加入收藏

 

qq,asp,php,jsp,xml,sql,.net,编程 程序 网页图象 建站经验 私服
首页 | 新闻资讯 | 编程开发 | 网页设计 | 图形图象 | 网络媒体 | 网站模板 | 数 据 库 | 投稿
论坛 | 操作系统 | 系统优化 | 网络安全 | 黑客技术 | 硬件学堂 | 硬件报价 | 服 务 器 | 地图
专题 | 应用软件 | 聊天通讯 | q q 专栏 | 建站经验 | 在线工具 | 站长club | 注 册 表 | 旧版
社会 | 游戏娱乐 | 设计欣赏 | 疑难解答 | 社区论坛 | 网络赚钱 | 网站地图 | 广告服务 | 服务
当前位置:首页>>编程开发>>asp专区>>正文 新版上线![旧版]
注:打开慢时请稍等
asp操作excel技术总结

http://www.iyit.net  日期:2006-5-3 15:31:33  来源:动网  点击:
参加讨论】目录
一、  环境配置
二、  asp对excel的基本操作
三、  asp操作excel生成数据表
四、  asp操作excel生成chart图
五、  服务器端excel文件浏览、下载、删除方案
六、  附录

正文
一、  环境配置
服务器端的环境配置从参考资料上看,微软系列的配置应该都行,即:
1.win9x+pws+office
2.win2000 professional+pws+office
3.win2000 server+iis+office
目前笔者测试成功的环境是后二者。office的版本没有特殊要求,考虑到客户机配置的不确定性和下兼容特性,建议服务器端office版本不要太高,以防止客户机下载后无法正确显示。
服务器端环境配置还有两个偶然的发现是:
1.  笔者开发机器上原来装有金山的wps2002,结果excel对象创建始终出现问题,卸载wps2002后,错误消失。
2.  笔者开发asp代码喜欢用frontpage,结果发现如果frontpage打开(服务器端),对象创建出现不稳定现象,时而成功时而不成功。扩展考察后发现,office系列的软件如果在服务器端运行,则excel对象的创建很难成功。
服务器端还必须要设置的一点是com组件的操作权限。在命令行键入“dcomcnfg”,则进入com组件配置界面,选择microsoft excel后点击属性按钮,将三个单选项一律选择自定义,编辑中将everyone加入所有权限。保存完毕后重新启动服务器。
客户端的环境配置没发现什么特别讲究的地方,只要装有office和ie即可,版本通用的好象都可以。

二、  asp对excel的基本操作
1、  建立excel对象
set objexcelapp = createobject("excel.application")
objexcelapp.displayalerts = false    不显示警告
objexcelapp.application.visible = false    不显示界面
2、  新建excel文件
objexcelapp.workbooks.add
set objexcelbook = objexcelapp.activeworkbook
set objexcelsheets = objexcelbook.worksheets
set objexcelsheet = objexcelbook.sheets(1)
3、  读取已有excel文件
straddr = server.mappath(".")
objexcelapp.workbooks.open(straddr & "\templet\table.xls")
set objexcelbook = objexcelapp.activeworkbook
set objexcelsheets = objexcelbook.worksheets
set objexcelsheet = objexcelbook.sheets(1)
4、  另存excel文件
objexcelbook.saveas straddr & "\temp\table.xls"
5、  保存excel文件
objexcelbook.save    (笔者测试时保存成功,页面报错。)
6、  退出excel操作
objexcelapp.quit  一定要退出
set objexcelapp = 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="internet explorer"
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 = "a test chart"
4、  通过表格数据设定图形
objexcelapp.activechart.setsourcedata objexcelsheet.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.location 1
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出现的死进程出现是一件很头疼的事情。在每个文件前加上“on error resume next”将有助于改善这种情况,因为它会不管文件是否产生错误都坚持执行到“application.quit”,保证每次程序执行完不留下死进程。

编辑: [发送给好友] [打印本页] [关闭窗口] [返回顶部]
上一篇:利用asp+jmail进行邮件群发的新思路
下一篇:用asp实现对oracle数据库的操作
转载请注明来源:www.iyit.net
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。

 相关文章
asp直接调用excel数据的例子(不用odbc 将sax加入我们的asp应用中 java和asp的交互(一)
java和asp的交互(二) asp与jsp的比较(2) asp与jsp的比较(1)
php和asp对象的等价关系 php vs asp asp初学者常犯的几个错误
浅谈如何建立三层体系结构的asp应用程序 iis6.0下asp的新增功能 用asp实现对oracle数据库的操作
利用asp+jmail进行邮件群发的新思路 在asp与asp.net之间共享对话状态(1) 在asp与asp.net之间共享对话状态(2)
asp自动解压rar文件 一段在asp中加密与解密对应的函数 asp基础
刷一次变一次图的asp代码 asp,php 和 jsp 比较 之我见 [asp]利用 xmlhttp 分块上传文件
在asp中使用sql语句之5:开始执行 在asp中使用sql语句之4:联合语句 在asp中使用sql语句之3:like、not like
最新更新 热点排行 推荐新闻
处理较长文章,添加 …… 效果
rs.open sql,conn,1,1全接触
asp初学者常犯的几个错误
windows 2000活动目录详解之安装配置篇
浅谈如何建立三层体系结构的asp应用程
vc++实现对远程计算机屏幕的监视
vc下揭开“特洛伊木马”的隐藏面纱
多线程技术在vc++串口通信程序中的应用
用vc++制作一个简单的局域网消息发送工
用vc++6.0的sockets api实现一个聊天室
用vc++实现上网拨号功能
使用visual c++开发soap客户端应用
vc++ smtp协议电子邮件传送剖析
vc++实现gps全球定位系统定位数据的提
用vc 6.0实现串行通信的三种方法
asp进度条
asp中使用sql语句教程
datalist里套datagrid,databind
测试一下喽!
asp自动解压rar文件
qq珊瑚虫外挂4.0版本发布!
多个广告位招商!
摄影后期系列一:1分钟为数码相片去红眼
qq挂机说明
asp进度条
photoshop通道抠图:给秀发飞扬的mm照
教您显示器亮度对比度的调节
新版上线,今日正式开通!!!
更多精彩图文广告等着您!
asp中使用sql语句教程
asp中使用sql语句教程
测试一下喽!
第二十章 开发delphi对象式数据管理功
sql简明教程(1)
vbscript和javascript互相调用 
jsp教程(四)-jsp actions的使用
操作系统被入侵后的修复过程
五一别忘电脑防毒 养成良好上网习惯
google对ie浏览器将捆绑搜索功能表担忧
新版上线,今日正式开通!!!
用photoshop创意图形“岁月”
摄影后期系列一:1分钟为数码相片去红眼

 友情链接
设置首 页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接
copyrights © 2004-2006 iyit.net all rights reserved.
网站合作、广告联系qq:147007642、466949678
易特网络技术 点击这里给我发消息