当前位置: 首页 > 图文教程 > 网络编程 > ASP > asp操作excel文件的函数

ASP
ASP实例:是否支持XmlHttp组件的判断
ASP对XML文档中文本的增加、删除、修改、查看
ASP操作XML文件的主要方法和实现
asp控制xml数据库的6段代码
ASP操作XML的类
ASP关于类的Let,Set和Get的用法的异同
ASP错误解决:800a003a错误
XMLHTTP Post Form时的表单乱码
IIS7.0在Vista系统下安装注意事项
asp文件打不开的原因
asp根据表单自动生成sql语句的函数
彻底解决XP下IIS无法解释ASP和PHP的问题
ASP教程:0177:800401f3错误解决
Service Unavailable错误的解决
ASP留言本教程
ASP教程:6大对象和数据库操作简单学
配置IIS蜜罐与黑客攻击
WEB共享与IIS相结合快速建立本地网站
IIS6架设网站的问题总结
HTTP 500 - 内部服务器错误的解决

ASP 中的 asp操作excel文件的函数


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-23   浏览: 222 ::
收藏到网摘: n/a

一、配置方法

1、开始---运行---dcomcnfg

2、组件服务---计算机---我的电脑---dcom配置---Microsoft Excel应用程序(右键)---属性---安全

3、启动和激活权限 选择自定义,点击编辑,添加用户everyone并给予所有权限

4、访问权限、配置权限同上

二、ASP对Excel的基本操作

1、建立Excel对象

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”,保证每次程序执行完不留下死进程。