ASP直接调用EXCEL数据
在ASP-NET中读写Excel文件有四种解决方案

在ASP-NET中读写Excel文件有四种解决方案在中读写Excel文件有四种解决方案在应用程序常常会遇到需要从Excel 文件中读取数据或将数据写入Excel的需求。
一般来讲,在中读写Excel文件有四种解决方案。
1.1.1 使用OLE DB使用OLE DB可以以查询数据库的方式来读取Excel文件,因为在某种程度上Excel表格可以看成是一张一张的数据表。
其二者的主要区别在于所使用的数据引擎不一样。
使用OLE DB访问Excel的要点是计算机上必须具有Microsoft Access Data Component 2.6(MADC2.6)以上版本,同时在连接字符串上必须声明“Extended Properties=Excel 8.0”,这里的指定Excel 版本号如果高于8.0可能会出错,所以一般来讲必须使用Excel 8.0。
然后其它的写法就和一般的访问数据库一样了,打开连接,填充数据集,再关闭连接即可。
例如下面的实现代码://创建一个数据链接string strCon = " Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source =c:\\sample.xls;Extended Properties=Excel 8.0" ; OleDbConnection myConn = new OleDbConnection ( strCon ) ;string strCom = " SELECT * FROM [Sheet1$] " ;myConn.Open ( ) ;//打开数据链接,得到一个数据集OleDbDataAdapter myCommand = new OleDbDataAdapter ( strCom , myConn ) ;//创建一个DataSet对象myDataSet = new DataSet ( ) ;//得到自己的DataSet对象myCommand.Fill ( myDataSet , "[Sheet1$]" ) ; //关闭此数据链接myConn.Close ( ) ;代码7-1使用这种解决方案的优点是不需要其他的服务器组件,部署非常方便,但是其缺点也是明显的,用它来读取Excel 2003格式以上的文件会存在数据丢失的情况,而且也无法生成Excel文件。
ASP操作EXCEL文件

ASP操作EXCEL文件最近实战ASP操作excel文件.在网上收集了一番资料. 以前找过一篇教程,是将excel文件作为一个数据库进行链接,然后的操作和对access数据库操作类似.但是这种方式对于我现在需要的方式,操作比较麻烦,甚至不能完成,所以作罢.对于一个固定格式,这个格式里有复杂的单元格合并,边框线条样式,还有图案,单元格之间还有公式关系等等的,我想最容易理解的就是在后台打开一个已有设定好模板的文件,然后在需要的地方插入数据,保存,输出... ...最后由关键字"ASP 操作excel"在google搜到在BLUEIDEA的教程(同时有很多网址有相同内容的教程,但是我相信还是blueidea是最早原创的)这种方法是直接建立一个excel对象,在后台可以更方便的对excel文档进行各种操作.文中一段服务器端还必须要设置的一点是COM组件的操作权限。
在命令行键入“DCOMCNFG”,则进入COM组件配置界面,选择MicrosoftExcel后点击属性按钮,将三个单选项一律选择自定义,编辑中将Everyone 加入所有权限。
保存完毕后重新启动服务器。
很重要.不设置的话,别的电脑将无法完成excel对象的建立.但是这种方法也有一个缺憾,在我实际操作中,如果服务器上已有打开的excel文件,再执行同一文件,就会出错.暂时还搞不明白为何.可能还有一些地方没设置好吧.另外,上面引用的文章中实例代码格式不太完整,其中很多换行和空格格式不准确,如果代码完整,只要复制代码,就可以运行成功,然后再慢慢进行研究修改,就很容易上手了.现把修改后的代码如下(删去了其中画图表的部分):程序代码:<%On Error Resume NextstrAddr=Server.MapPath(".")set objExcelApp=CreateObject("Excel.Application") objExcelApp.DisplayAlerts=falseset objExcelBook=objExcelApp.ActiveWorkBookset objExcelSheets=objExcelBook.WorksheetssetobjExcelSheet=objExcelBook.Sheets(1)objExcelSheet.Ra nge("B2:k2").Value=Array("Week1","Week2","Week3","We ek4","Week5","Week6","Week7")objExcelSheet.Range("B3:k3").Value=Array("67","87","5"," 9","7","45","45","54","54","10")objExcelSheet.Range("B4:k4").Value=Array("10","10","8"," 27","33","37","50","54","10","10")objExcelSheet.Range("B5:k5").Value=Array("23","3","86"," 64","60","18","5","1","36","80")objExcelSheet.Cells(3,1).Value="InternetExplorer" objExcelSheet.Cells(4,1).Value="Netscape" objExcelSheet.Cells(5,1).Value="Other" objExcelSheet.Range("b2:k5").SelectSaveAs(strAddr&"\T emp\Excel.xls")objExcelApp.Quitset objExcelApp=Nothing%>NewDocument至此,对于我的需求基本满足了.实际操作中还有一些小问题,慢慢再解决.其实在msdn上有很详细的office各类的对象的说明,之前因为急功近利,只想找最现成的实例,但是查看一下msdn,很多问题突然就明白了呵呵[Edit on 2006-7-3 23:07:40 By 猪飞飞]发表:猪飞飞| 时间:2006-7-3 23:03:40 | 评论[1] | 点击[1033]≡≡≡≡≡ 网友评论操作完excel文件需要将文件进行输出,实际弄一下,用ASP 的redirect到excel方法,有时候是在IE中直接打开,有时候是弹出"下载打开保存"窗口.如果需要直接在IE中打开,不放用FSO载入excel文件,然后在IE中输出.搜了一段代码,没有验证过,但是理论上这样是可行的:程序代码:<% Dim Fso,FileExt,strFilePath,MimestrFilePath = "f:\sifang\qyoa\国贸手抄.doc"SetFso=Server.CreateObject("Scripting.FileSystemObject" FileExt = Fso.GetExtensionName(strFilePath)Set fso=Nothing Select Case FileExtCase "doc"Mime="Application/msword"Case "xls"Mime="Application/msexcel"End Select Call OutPut(strFilePath,Mime)‘############################################## ########Function OutPut(strFilePath,Mime)Response.ContentType = MimeConst adTypeBinary = 1Set objStream = Server.CreateObject("ADODB.Stream" objStream.OpenobjStream.Type = adTypeBinaryobjStream.LoadFromFile strFilePathResponse.BinaryWrite objStream.ReadobjStream.CloseSet objStream = NothingEnd Function。
探索服务器端Excel数据处理:ASP与ADODB的协同

探索服务器端Excel数据处理:ASP与ADODB的协同《探索服务器端Excel数据处理:ASP与ADODB的协同》在当今数字化时代,数据的处理和分析变得尤为重要。
尤其是在服务器端,处理Excel文件成为了一项常见且关键的任务。
本文将深入探讨如何使用ASP(Active Server Pages)和ADODB(ActiveX Data Objects)技术来处理上传的Excel文件,实现数据的有效管理和操作。
一、ASP与ADODB:服务器端数据处理的基石ASP作为一种服务器端脚本环境,能够与数据库进行交互,处理客户端请求,生成动态网页。
而ADODB则提供了一种与数据源进行交互的途径,使得在服务器端处理数据成为可能。
二、Excel文件的服务器端读取在服务器端读取Excel文件,首先需要确保文件的路径正确,然后通过ADODB连接对象建立与Excel文件的连接。
使用特定的连接字符串,可以指定Excel文件作为数据源,并设置相应的属性以适应不同的Excel版本。
三、数据的提取与处理一旦连接建立,就可以使用ASP脚本执行SQL查询,从Excel文件中提取数据。
通过遍历结果集,可以逐行读取数据,为进一步的处理和分析做准备。
四、数据的插入与数据库操作获取数据后,常见的操作是将这些数据插入到数据库中。
通过构建合适的SQL语句,可以将Excel中的数据导入到数据库表中,实现数据的持久化存储。
五、性能优化与错误处理在处理Excel文件时,性能优化和错误处理是不可忽视的环节。
合理的资源管理和错误捕捉机制,能够确保数据处理的稳定性和可靠性。
六、结语:ASP与ADODB的协同优势通过ASP和ADODB的协同工作,服务器端的Excel数据处理变得高效且灵活。
这种技术组合不仅提高了数据处理的自动化水平,还为数据驱动的Web应用提供了强大的支持。
asp操作Excel类_

asp操作Excel类_asp操作Excel类:%'************************************************** *****************'用法说明'Dim a'Set a=new CreateExcel'a.SavePath="x" '保存路径'a.SheetName="工作簿名称" '多个工作表a.SheetName=array("工作簿名称一","工作簿名称二")'a.SheetTitle="表名称" '可以为空多个工作表a.SheetName=array("表名称一","表名称二")'a.Data =d '二维数组 '多个工作表 array(b,c) b与c 为二维数组'Dim rs'Set rs=server.CreateObject("Adodb.RecordSet")'rs.open "Select id, classid, className from [class] ",conn, 1, 1'a.AddDBData rs, "字段名一,字段名二", "工作簿名称", "表名称", true 'true自动猎取表字段名'a.AddData c, true , "工作簿名称", "表名称" 'c二维数组 true 第一行是否为标题行'a.AddtData e, "Sheet1" '按模板生成c=array(array("AA1", "内容"), array("AA2", "内容2")) 'a.Create()'edTime 生成时间,毫秒数'a.SavePath 保存路径'Set a=nothing'设置COM组件的操作权限。
如何把一个Excel文件放到ASP页面中去?

如何把一个Excel文件放到ASP页面中去?很简单,只需建立一个worksheet和Excel相关的信息就可以了,具体代码见下:<%set xlApp = Server.CreateObject("Excel.Application")xlApp.Visible = false' 使服务端不出现Excel窗口set myWorkbook = xlApp.Workbooks.Add' 建立一个worksheetset myWorksheet = myWorkbook.Worksheets(1)myWorksheet.Range("A1").Value = '精彩春风通讯录'myWorksheet.Range("A1").Font.Size = 12myWorksheet.Range("A1").Font.Bold = truemyWorksheet.Range("A2").Value = '姓名'myWorksheet.Range("B2").Value = '地址'myWorksheet.Range("C2").Value = '电话'myWorksheet.Range("D2").Value = '手机'' 以上7行建立表头myWorksheet.Range("A2:D2").Font.Bold = truestrFileName = Session.SessionID & ".xls"' 确保文件名唯一strAppPath = Request.ServerVariables("PA TH_TRANSLATED")strAppPath = Left(strAppPath, InstrRev(strAppPath, "\"))strFullPath = strAppPath & strFileNamemyWorkbook.SaveAs(strFullPath)' 保存文件myWorkbook.Close' 关闭ExcelxlApp.Quitset myWorksheet = Nothingset myWorkbook = Nothingset myxlApp = NothingResponse.Redirect strFileName' 写到ASP页面,即浏览器中%>。
asp导航excel数据到mssqlaccessmysql等数据方法

asp导航excel数据到mssqlaccessmysql等数据方法下面是一段简单的由asp导入excel数据保存到其它的数据如有mssql access mysql 等哦好了费话不说多了来看看下面的代码吧<! #include file="adoconn asp" > <% Set xlsconn = server CreateObject("adodb connection") set rs=server CreateObject("adodb recordset")source =server mappath(" ")&""&replace(request("path") "/" "") myConn_Xsl="Provider=Microsoft Jet OLEDB ;Data Source=" &source & ";Extended Properties=Excel " xlsconn open myConn_Xslsql="select * from [商品列表$]" set rs=xlsconn execute(sql) if not rs eof then while not rs eof names=rs("商品名") pic=rs("图片")sql="insert into [product](namese pic) values( "& names &" "& pic &" )" conn execute(sql)rs movenext wendend if response write "导入成功" end if %>数据连接文件<! #include file="adoconn asp" >lishixinzhi/Article/program/net/201311/14100。
如何用asp读取Excel文件(比较全面)

如何用asp读取Excel文件(比较全面)1.ASP对Excel的基本操作(1) 建立Excel对象创建Excel对象可以通过下面的代码来实现:<%set objExcelApp = CreateObject("Excel.Application") objExcelApp.DisplayAlerts = false '不显示警告objExcelApp.Application = false '不显示界面%>(2) 新建Excel文件新建Excel文件可以通过以下代码来实现:<%objExcelApp.WorkBooks.addset objExcelBook = objExcelApp.ActiveWorkBookset objExcelSheets = objExcelBook.Worksheetsset objExcelSheet = objExcelBook.Sheets(1)%>(3) 读取已有的Excel文件读取已有的Excel文件可以通过下面的代码来实现<%strAddr = Server.MapPath(".")objExcelApp.WorkBooks.Open(strAddr & "TempletTable.xls") set objExcelBook = objExcelApp.ActiveWorkBookset objExcelSheets = objExcelBook.Worksheetsset objExcelSheet = objExcelBook.WorkSheets(1)%>(4) 另存Excel文件另存Excel文件可以通过以下代码来实现<%objExcelBook.SaveAs strAddr & "templateTables.xls" %>(5) 保存Excel文件保存Excel文件可以通过以下代码来实现:<%objExcelBook.Save%>(6) 退出Excel操作<%objExcelApp.Quit '一定要退出set objExcelApp = nothing%>2 读取Excel文件的实例<%set xlApp = server.CreateObject("Excel.Application") strsource = server.MapPath("xl.xls")set xlbook = xlApp.WorkBooks.Open(strsource)set xlsheet = xlbook.Worksheets(1)i = 1response.write "<table>"while xlsheet.cells(i,1) <> ""response.write "<tr>"response.write "<td>" & xlsheet.Cells(i,1) & "</td>" response.write "<td>" & xlsheet.Cells(i,2) & "</td>" response.write "<td>" & xlsheet.Cells(i,3) & "</td>" response.write "<tr>"i = i + 1wendresponse.write "</table>"set xlsheet = nothingset xlbook = nothingxlApp.quit'千万记住要加这一句,否则每运行一次你的机器里就增加一个Excel进程,而且无法释放'set xlApp = nothing 是不行的%>====================================== ==========================3.怎样将数据从Excel导入到SQL Server中(1)<%subdataIntoSqlServer_ceritificate(strFileName,strSheetName,myCon n)'定义dim myConnectiondim strNamedim rsXsl,rsSqldim myConn_Xsldim cmddim i,jdim maxIdstrName = strFileNameset myConnection =Server.CreateObject("ADODB.Connection")set rsXsl = Server.CreateObject("ADODB.Recordset")set rsSql = Server.CreateObject("ADODB.Recordset")set cmd = server.CreateObject("mand")cmd.ActiveConnection = myConnmyConn_Xsl = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strName & _";Extended Properties=Excel 8.0"'打开连接myconnection.open myConn_Xsl'打开表str_Xsl = "select * from [" & strSheetName & "$]"rsXsl.open str_Xsl,myconnection,1,1j = 1Do while not rsXsl.eof'取出最大值str_sql = "select Max(id) as maxId from exceltosql"rsSql.open str_Sql,myConn,1,3if Not rsSql.eof thenif not isNull(rsSql("maxId")) thenmaxId=CLng(rsSql("maxId")) + 1elsemaxId = 1end ifelsemaxId = 1end ifrsSql.close '//关闭对象'加入数据库str_Sql = "insert into exceltosql values(" & maxId&",'"&rsXsl(1)&"','" & rsXsl(2)&"')"mandText = str_Sqlcmd.Excute()''''''''''''''''''''''''''''''''''''''''''j = j + 1rsXsl.moveNextloopresponse.write "共导入 " & j_1 & " 条记录.<br>"response.write "<a href=# onclick='self.close();'>关闭窗口</a>"set rsXsl = nothingset rsSql = nothingset myconnection = nothingset cmd = nothingend sub(2)'调用方法<%file1 = "c:\excelexample.xls"myconn = "DRIVER={SQL SERVER};SERVER=(local);uid=sa;pwd=sa;DATABASE=aspbook"dataIntoSqlServer_ceritificate file1,"sheet1",myconn%>====================================== =======================================4.ASP操作Excel技术总结目录一、环境配置二、 ASP对Excel的基本操作三、 ASP操作Excel生成数据表四、 ASP操作Excel生成Chart图五、服务器端Excel文件浏览、下载、删除方案六、附录正文一、环境配置服务器端的环境配置从参考资料上看,微软系列的配置应该都行,即:1.Win9x+PWS+Office2.Win2000 Professional+PWS+Office3.Win2000 Server+IIS+Office目前笔者测试成功的环境是后二者。
asp读取excel代码(举了四个excel不同实例应用)

en isarray(exceldata) then
inerr("表数据载入有误")
dim beginrow : beginrow = 1
public property let sheetname(byval val)
if not isarray(val) then
if val = "" then
inerr("表名设置有误")
end if
end property
rem 检查数据
private sub checkdata()
if savepath_ = "" then inerr("保存路径不能为空")
if not isarray(sheetname_) then
end function
private sub createsheets(byval data_, dataid_)
dim spreadsheet
dim tempsheettitle
dim temptitlefirstline
else
set spreadsheet = excelbook.sheets(1)
= sheetname_
tempsheettitle = sheettitle_
temptitlefirstline = titlefirstline
else
tempsheettitle = ""
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ASP直接调用EXCEL数据的例子(不用ODBC)
例子:
在"c:excelbook1.xls"存在一个EXCEL表book1.xsl,表的结构如下:
1 序号名称金额
2 1 张三100
3 2 李四200
4 3 王五300
序号字段不为空
注意:excel 起始行是1而不是为0
<%@language=vbscript %>
<%
Set xlApp = server.CreateObject("Excel.Application")
strsource = "c:excelbook1.xls"
Set xlbook = xlApp.Workbooks.Open(strsource)
Set xlsheet = xlbook.Worksheets(1)
i=1
response.write "<table cellpadding=0 cellspacing=0 border=1 width=500>"
while xlsheet.cells(i,1)<>""
response.write "<tr>"
response.write " <td height=20 align=center width=100>" & xlsheet.Cells(i, 1) & "</td>" response.write " <td height=20 align=center width=200>" & xlsheet.Cells(i, 2) & "</td>" response.write " <td height=20 align=center width=200>" & xlsheet.Cells(i, 3) & "</td>" response.write "</tr>"
i=i+1
wend
response.write "</table>"
set xlsheet=nothing
set xlbook=nothing
xlApp.quit '千万记住要加这一句,否则每运行一次你的机器里就增加一个excel进程,而且无法释放。
我试过"set xlApp=nothing"是不行的。
%>。