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

ASP
ASP中数据库调用中常见错误的现象和解决方法
ASP取出HTML里面的图片地址的函数
关于分页查询和性能问题
利用Asp生成整站静态
用ASP+XMLHTTP编写一个天气预报程序
轻松检测浏览器是否接受Cookies信息
净化网络环境:ASP程序实现过滤脏话
入门:防范SQL注入攻击的新办法
如何对ASP.NET进行性能优化
ASP无法更新ACCESS数据库解决方法
ASP:利用ASP把图片上传到数据库
ASP:用ASP编程实现网络内容快速查找
ASP:用ASP打造一个小型的网页BBS系统
ASP:用Asp编程实现QQ的在线情况查询
通过表单创建word的一个例子
在ASP中轻松实现记录集分页显示
ASP中实现小偷程序的原理和简单示例
ASP:6行代码实现无组件上传
实用篇:用asp实现QQ在线查询
如何轻松打造ASP计数器

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


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