如何用asp读取Excel文件Word文件下载.docx

上传人:b****5 文档编号:20051433 上传时间:2023-01-16 格式:DOCX 页数:17 大小:23.43KB
下载 相关 举报
如何用asp读取Excel文件Word文件下载.docx_第1页
第1页 / 共17页
如何用asp读取Excel文件Word文件下载.docx_第2页
第2页 / 共17页
如何用asp读取Excel文件Word文件下载.docx_第3页
第3页 / 共17页
如何用asp读取Excel文件Word文件下载.docx_第4页
第4页 / 共17页
如何用asp读取Excel文件Word文件下载.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

如何用asp读取Excel文件Word文件下载.docx

《如何用asp读取Excel文件Word文件下载.docx》由会员分享,可在线阅读,更多相关《如何用asp读取Excel文件Word文件下载.docx(17页珍藏版)》请在冰豆网上搜索。

如何用asp读取Excel文件Word文件下载.docx

objExcelApp.Quit 

一定要退出

setobjExcelApp=nothing

2读取Excel文件的实例

strsource=server.MapPath("

xl.xls"

setxlbook=xlApp.WorkBooks.Open(strsource)

setxlsheet=xlbook.Worksheets

(1)

i=1

response.write"

table>

"

whilexlsheet.cells(i,1)<

>

response.write"

tr>

td>

&

xlsheet.Cells(i,1)&

/td>

xlsheet.Cells(i,2)&

xlsheet.Cells(i,3)&

i=i+1

wend

/table>

setxlsheet=nothing

setxlbook 

=nothing

xlApp.quit

'

千万记住要加这一句,否则每运行一次你的机器里就增加一个Excel进程,而且无法释放

setxlApp=nothing是不行的

================================================================

3.怎样将数据从Excel导入到SQLServer中

定义

dimmyConnection

dimstrName

dimrsXsl,rsSql

dimmyConn_Xsl

dimcmd

dimi,j

dimmaxId

strName=strFileName

setmyConnection=Server.CreateObject("

ADODB.Connection"

setrsXsl=Server.CreateObject("

ADODB.Recordset"

setrsSql=Server.CreateObject("

setcmd 

=server.CreateObject("

ADODB.Command"

cmd.ActiveConnection=myConn

myConn_Xsl="

Provider=Microsoft.Jet.OLEDB.4.0;

DataSource="

strName&

_

;

ExtendedProperties=Excel8.0"

打开连接

myconnection.openmyConn_Xsl

打开表 

str_Xsl="

select*from["

strSheetName&

$]"

rsXsl.openstr_Xsl,myconnection,1,1

j=1

DowhilenotrsXsl.eof

取出最大值

str_sql="

selectMax(id)asmaxIdfromexceltosql"

rsSql.openstr_Sql,myConn,1,3

ifNotrsSql.eofthen

ifnotisNull(rsSql("

maxId"

))then

maxId=CLng(rsSql("

))+1

else

maxId=1

endif

rsSql.close 

//关闭对象

加入数据库

str_Sql="

insertintoexceltosqlvalues("

maxId&

'

&

rsXsl

(1)&

rsXsl

(2)&

)"

cmd.CommandText=str_Sql

cmd.Excute()

j=j+1

rsXsl.moveNext

loop

共导入"

j_1&

条记录.<

br>

ahref=#>

关闭窗口<

/a>

setrsXsl=nothing

setrsSql=nothing

setmyconnection=nothing

setcmd=nothing

endsub

(2)

调用方法

file1="

c:

excelexample.xls"

myconn="

DRIVER={SQLSERVER};

SERVER=(local);

uid=sa;

pwd=sa;

DATABASE=aspbook"

dataIntoSqlServer_ceritificatefile1,"

sheet1"

myconn

========================================================

4.ASP操作Excel技术总结 

目录 

一、 

环境配置 

二、 

ASP对Excel的基本操作 

三、 

ASP操作Excel生成数据表 

四、 

ASP操作Excel生成Chart图 

五、 

服务器端Excel文件浏览、下载、删除方案 

六、 

附录 

正文 

服务器端的环境配置从参考资料上看,微软系列的配置应该都行,即:

1.Win9x+PWS+Office 

2.Win2000 

Professional+PWS+Office 

3.Win2000 

Server+IIS+Office 

目前笔者测试成功的环境是后二者。

★点击设计★www.djasp.Net

专业的网页编程资讯站点,欢迎访问!

  此信息随机生成,防止无聊之人盗用点击设计站点上的资源,请关闭该网站然后访问点击设计官方网址:

Office的版本没有特殊要求,考虑到客户机配置的不确定性和下兼容特性,建议服务器端Office版本不要太高,以防止客户机下载后无法正确显示。

服务器端环境配置还有两个偶然的发现是:

1. 

笔者开发机器上原来装有金山的WPS2002,结果Excel对象创建始终出现问题,卸载WPS2002后,错误消失。

2. 

笔者开发ASP代码喜欢用FrontPage,结果发现如果FrontPage打开(服务器端),对象创建出现不稳定现象,时而成功时而不成功。

扩展考察后发现,Office系列的软件如果在服务器端运行,则Excel对象的创建很难成功。

服务器端还必须要设置的一点是COM组件的操作权限。

在命令行键入“DCOMCNFG”,则进入COM组件配置界面,选择Microsoft 

Excel后点击属性按钮,将三个单选项一律选择自定义,编辑中将Everyone加入所有权限。

保存完毕后重新启动服务器。

客户端的环境配置没发现什么特别讲究的地方,只要装有Office和IE即可,版本通用的好象都可以。

1、 

建立Excel对象 

set 

objExcelApp 

CreateObject("

) 

objExcelApp.DisplayAlerts 

false 

不显示警告 

objExcelApp.Application.Visible 

不显示界面 

2、 

新建Excel文件 

objExcelApp.WorkBooks.add 

objExcelBook 

objExcelApp.ActiveWorkBook 

objExcelSheets 

objExcelBook.Worksheets 

objExcelSheet 

objExcelBook.Sheets

(1) 

3、 

读取已有Excel文件 

strAddr 

Server.MapPath("

objExcelApp.WorkBooks.Open(strAddr 

4、 

另存Excel文件 

objExcelBook.SaveAs 

strAddr 

TempTable.xls"

5、 

保存Excel文件 

objExcelBook.Save 

(笔者测试时保存成功,页面报错。

此内容系随机生成,谢绝站长们转转,您查看的内容来自★点击设计★www.djasp.Net

点击设计,专业的网页编程资讯站点,欢迎访问!

  请记好点击设计的域名:

www.djasp.Net如果您正在浏览此内容,请关闭此网页,然后访问点击设计的官方网址:

6、 

退出Excel操作 

一定要退出 

Nothing 

在一个范围内插入数据 

objExcelSheet.Range("

B3:

k3"

).Value 

Array("

67"

"

87"

 

5"

9"

7"

45"

54"

10"

在一个单元格内插入数据 

objExcelSheet.Cells(3,1).Value="

Internet 

Explorer"

选中一个范围 

单元格左边画粗线条 

单元格右边画粗线条 

单元格上边画粗线条 

7、 

单元格下边画粗线条 

8、 

单元格设定背景色 

9、 

合并单元格 

10、 

插入行 

11、 

插入列 

创建Chart图 

objExcelApp.Charts.Add 

设定Chart图种类 

objExcelApp.ActiveChart.ChartType 

97 

注:

二维折线图,4;

二维饼图,5;

二维柱形图,51 

设定Chart图标题 

objExcelApp.ActiveChart.HasTitle 

True 

objExcelApp.ActiveChart.ChartTitle.Text 

test 

Chart"

通过表格数据设定图形 

objExcelApp.ActiveChart.SetSourceData 

objExcelSheet.Range("

A1:

k5"

),1 

直接设定图形数据(推荐) 

objExcelApp.ActiveChart.SeriesCollection.NewSeries 

objExcelApp.ActiveChart.SeriesCollection

(1).Name 

="

333"

objExcelApp.ActiveChart.SeriesCollection

(1).Values 

={1,4,5,6,2}"

绑定Chart图 

objExcelApp.ActiveChart.Location 

显示数据表 

objExcelApp.ActiveChart.HasDataTable 

显示图例 

objExcelApp.ActiveChart.DataTable.ShowLegendKey 

浏览的解决方法很多,“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”,保证每次程序执行完不留下死进程。

5.ASP读EXCEL2000的文章!

i)将Excel97或Excel2000生成的XLS文件(book)看成一个数据库,其中的每一个工作表(sheet)看成数据库表

ii)ADO假设Excel中的第一行为字段名.所以你定义的范围中必须要包括第一行的内容

iii)Excel中的行标题(即字段名)不能够包含数字.Excel的驱动在遇到这种问题时就会出错的。

例如你的行标题名为“F1”

iiii)如果你的Excel电子表格中某一列同时包含了文本和数字的话,那么Excel的ODBC驱动将不能够正常,处理这一行的数据类型,你必须要保证该列的数据类型一致

DimConn,Driver,DBPath,Rs

建立Connection对象

SetConn=Server.CreateObject("

Driver="

Driver={MicrosoftExcelDriver(*.xls)};

DBPath="

DBQ="

Server.MapPath("

test.xls"

调用Open方法打开数据库

Conn.OpenDriver&

DBPath

DSN连接方式

Conn.Open"

Dsn=test"

注意表名一定要以下边这种格试"

[表名$]"

书写

Sql="

Select*From[Sheet1$]where序号=0"

SetRs=Conn.Execute(Sql)

IFRs.EofAndRs.BofThen

Response.write"

没有找到您需要的数据!

!

Else

DoWhileNotRs.EOF

Response.writeRs("

姓名"

Rs.MoveNext

Loop

EndIF

Rs.Close

SetRs=nothing

Conn.Close

SetConn=Nothing

Response.Write"

成功!

6.ASP与电子表格EXCEL的交互操作

HerewegoagainwithanothersampleforExcel,thistimewewillbeusingASPtocreateachart.Youall

askedmeforit,nowhereisthesolution.Thanksagainforallyournicecomments:

Firstwesetthetypeofscript

%@LANGUAGE="

VBSCRIPT"

%>

Maketheobject,andsettheobjecttoanExcelsheet

DimMyExcelChart

SetMyExcelChart=CreateObject("

Excel.Sheet"

Nowletswritetherestofthescript,seethecomments

showordontshowexceltouser,TRUEorFALSE

MyExcelChart.Application.Visible=True

populatethecells

MyExcelChart.ActiveSheet.Range("

B2:

k2"

).Value=Array

("

Week1"

Week2"

Week3"

Week4"

Week5"

Week6"

Week7"

Week8"

Week9"

Week10"

B4:

k4"

8"

27"

33"

37"

50"

B5:

23"

3"

86"

64"

60"

18"

1"

36"

80"

MyExcelChart.ActiveSheet.Cells(3,1)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1