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

ASP
用ASP实现自动建站.实现虚拟二级目录
ASP关于动态数据显示页面得锚点
adodb.stream对象的方法/属性
在ASP/ASP.NET 中处理客户端数字证书
用ASP实现汉字转拼音的功能
在PPC上实现编译ASP
简单快捷实现ASP在线发邮件功能
javascript在ASP中实现掩码文本框
ASP写的自动生成SELECT表单的函数
全面了解Cookie的传递流程、编程实现及安全问题
ASP生成XBM图可用作验证码
改进的ASP备份SQL Server数据库
关于SELECT的无限级联(省|市|县|乡|村|...)
XML技术上传文件
使用ASP实现文件上载(上传)的各种方法
输出带日期格式的随机数.asp
一个高效的数据分页的存储过程
用ASP实现长文章用分页符来分页显示
一个改进的ASP生成SQL 命令字符串的类
一点ASP问题、差错和个人心得

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-23   浏览: 155 ::
收藏到网摘: 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”,保证每次程序执行完不留下死进程。