狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

[轉(zhuǎn)帖]如何用asp讀取Excel文件

liguoquan
2023年11月28日 9:45 本文熱度 758
:如何用asp讀取Excel文件


如何用asp讀取Excel文件

https://www.cnblogs.com/athrun/articles/1036454.html

1.ASP對(duì)Excel的基本操作
(1) 建立Excel對(duì)象
     創(chuàng)建Excel對(duì)象可以通過下面的代碼來實(shí)現(xiàn):
<%
set objExcelApp = createObject("Excel.Application")
objExcelApp.DisplayAlerts = false                '不顯示警告
objExcelApp.Application    = false                '不顯示界面
%>
(2) 新建Excel文件
     新建Excel文件可以通過以下代碼來實(shí)現(xiàn):
<%
objExcelApp.WorkBooks.add
set objExcelBook    = objExcelApp.ActiveWorkBook
set objExcelSheets = objExcelBook.Worksheets
set objExcelSheet   = objExcelBook.Sheets(1)
%>
(3) 讀取已有的Excel文件
     讀取已有的Excel文件可以通過下面的代碼來實(shí)現(xiàn)        
<%
strAddr = Server.MapPath(".")
objExcelApp.WorkBooks.Open(strAddr & "TempletTable.xls")
set objExcelBook    = objExcelApp.ActiveWorkBook
set objExcelSheets = objExcelBook.Worksheets
set objExcelSheet   = objExcelBook.WorkSheets(1)
%>
(4) 另存Excel文件
     另存Excel文件可以通過以下代碼來實(shí)現(xiàn)
<%
objExcelBook.SaveAs strAddr & "templateTables.xls"
%>
(5) 保存Excel文件
     保存Excel文件可以通過以下代碼來實(shí)現(xiàn):
<%
objExcelBook.Save
%>        
(6) 退出Excel操作
<%
objExcelApp.Quit          '一定要退出
set objExcelApp = nothing
%>

2 讀取Excel文件的實(shí)例
<%
set xlApp = server.createObject("Excel.Application")
strsource = server.MapPath("xl.xls")
set xlbook = xlApp.WorkBooks.Open(strsource)
set xlsheet = xlbook.Worksheets(1)

i = 1
response.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 + 1
   
wend

response.write "</table>"
set xlsheet = nothing
set xlbook   = nothing
xlApp.quit
'千萬記住要加這一句,否則每運(yùn)行一次你的機(jī)器里就增加一個(gè)Excel進(jìn)程,而且無法釋放
'set xlApp = nothing 是不行的
%>
================================================================
3. 怎樣將數(shù)據(jù)從Excel導(dǎo)入到SQL Server中
(1)
<%
sub dataIntoSqlServer_ceritificate(strFileName,strSheetName,myConn)
    '定義
    dim myConnection
    dim strName
    dim rsXsl,rsSql
    dim myConn_Xsl
    dim cmd
    dim i,j
    dim maxId
   
    strName = strFileName
    set myConnection = Server.createObject("ADODB.Connection")
    set rsXsl = Server.createObject("ADODB.Recordset")
    set rsSql = Server.createObject("ADODB.Recordset")
    set cmd    = server.createObject("ADODB.Command")
   
    cmd.ActiveConnection = myConn
   
    myConn_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,1
    j = 1
    Do while not rsXsl.eof
    '取出最大值
    str_sql = "select Max(id) as maxId from exceltosql"
    rsSql.open str_Sql,myConn,1,3
    if Not rsSql.eof then
       if not isNull(rsSql("maxId")) then
          maxId=CLng(rsSql("maxId")) + 1
       else
          maxId = 1
       end if
    else
       maxId = 1
    end if
    rsSql.close    '//關(guān)閉對(duì)象
    '加入數(shù)據(jù)庫
    str_Sql = "insert into exceltosql values(" & maxId&",'"&rsXsl(1)&"','" & rsXsl(2)&"')"
       cmd.CommandText = str_Sql
       cmd.Excute()
       ''''''''''''''''''''''''''''''''''''''''''
       j = j + 1
       rsXsl.moveNext
    loop
   
    response.write "共導(dǎo)入 " & j_1 & " 條記錄.<br>"
    response.write "<a href=# onclick='self.close();'>關(guān)閉窗口</a>"
    set rsXsl = nothing
    set rsSql = nothing
    set myconnection = nothing
    set cmd = nothing
end sub


(2)
'調(diào)用方法
<%
file1 = "c:excelexample.xls"
myconn = "DRIVER={SQL SERVER};SERVER=(local);uid=sa;pwd=sa;DATABASE=aspbook"
dataIntoSqlServer_ceritificate file1,"sheet1",myconn
%>
========================================================
4.ASP操作Excel技術(shù)總結(jié)  

目錄  
一、             環(huán)境配置  
二、             ASP對(duì)Excel的基本操作  
三、             ASP操作Excel生成數(shù)據(jù)表  
四、             ASP操作Excel生成Chart圖  
五、             服務(wù)器端Excel文件瀏覽、
下載、刪除方案  
六、             附錄  

正文  
一、             環(huán)境配置  
服務(wù)器端的環(huán)境配置從參考資料上看,微軟系列的配置應(yīng)該都行,即:  
1.Win9x+PWS+Office  
2.Win2000   Professional+PWS+Office  
3.Win2000   Server+IIS+Office  
目前筆者測(cè)試成功的環(huán)境是后二者。Office的版本沒有特殊要求,考慮到客戶機(jī)配置的不確定性和下兼容特性,建議服務(wù)器端Office版本不要太高,以防止客戶機(jī)
下載后無法正確顯示。  
服務(wù)器端環(huán)境配置還有兩個(gè)偶然的發(fā)現(xiàn)是:  
1.             筆者開發(fā)機(jī)器上原來裝有金山的WPS2002,結(jié)果Excel對(duì)象創(chuàng)建始終出現(xiàn)問題,卸載WPS2002后,錯(cuò)誤消失。  
2.             筆者開發(fā)ASP代碼喜歡用FrontPage,結(jié)果發(fā)現(xiàn)如果FrontPage打開(服務(wù)器端),對(duì)象創(chuàng)建出現(xiàn)不穩(wěn)定現(xiàn)象,時(shí)而成功時(shí)而不成功。擴(kuò)展考察后發(fā)現(xiàn),Office系列的軟件如果在服務(wù)器端運(yùn)行,則Excel對(duì)象的創(chuàng)建很難成功。  
服務(wù)器端還必須要設(shè)置的一點(diǎn)是COM組件的操作權(quán)限。在命令行鍵入“DCOMCNFG”,則進(jìn)入COM組件配置界面,選擇Microsoft   Excel后點(diǎn)擊屬性按鈕,將三個(gè)單選項(xiàng)一律選擇自定義,編輯中將Everyone加入所有權(quán)限。保存完畢后重新啟動(dòng)服務(wù)器。  
客戶端的環(huán)境配置沒發(fā)現(xiàn)什么特別講究的地方,只要裝有Office和IE即可,版本通用的好象都可以。  

二、             ASP對(duì)Excel的基本操作  
1、             建立Excel對(duì)象  
set   objExcelApp   =   createObject("Excel.Application")  
objExcelApp.DisplayAlerts   =   false                         不顯示警告  
objExcelApp.Application.Visible   =   false                         不顯示界面  
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   &   "TempletTable.xls")  
set   objExcelBook   =   objExcelApp.ActiveWorkBook  
set   objExcelSheets   =   objExcelBook.Worksheets  
set   objExcelSheet   =   objExcelBook.Sheets(1)  
4、             另存Excel文件  
objExcelBook.SaveAs   strAddr   &   "TempTable.xls"  
5、             保存Excel文件  
objExcelBook.Save                         (筆者測(cè)試時(shí)保存成功,頁面報(bào)錯(cuò)。)  
6、             退出Excel操作  
objExcelApp.Quit             一定要退出  
set   objExcelApp   =   Nothing  

三、             ASP操作Excel生成數(shù)據(jù)表  
1、             在一個(gè)范圍內(nèi)插入數(shù)據(jù)  
objExcelSheet.Range("B3:k3").Value   =   Array("67",   "87",   "5",   "9",   "7",   "45",   "45",   "54",   "54",   "10")  
2、             在一個(gè)單元格內(nèi)插入數(shù)據(jù)  
objExcelSheet.Cells(3,1).Value="Internet   Explorer"  
3、             選中一個(gè)范圍  
4、             單元格左邊畫粗線條  
5、             單元格右邊畫粗線條  
6、             單元格上邊畫粗線條  
7、             單元格下邊畫粗線條  
8、             單元格設(shè)定背景色  
9、             合并單元格  
10、             插入行  
11、             插入列  

四、             ASP操作Excel生成Chart圖  
1、             創(chuàng)建Chart圖  
objExcelApp.Charts.Add  
2、             設(shè)定Chart圖種類  
objExcelApp.ActiveChart.ChartType   =   97  
注:二維折線圖,4;二維餅圖,5;二維柱形圖,51  
3、             設(shè)定Chart圖標(biāo)題  
objExcelApp.ActiveChart.HasTitle   =   True  
objExcelApp.ActiveChart.ChartTitle.Text   =   "A   test   Chart"  
4、             通過表格數(shù)據(jù)設(shè)定圖形  
objExcelApp.ActiveChart.SetSourceData   objExcelSheet.Range("A1:k5"),1  
5、             直接設(shè)定圖形數(shù)據(jù)(
推薦)  
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、             顯示數(shù)據(jù)表  
objExcelApp.ActiveChart.HasDataTable   =   True  
8、             顯示圖例  
objExcelApp.ActiveChart.DataTable.ShowLegendKey   =   True  

五、             服務(wù)器端Excel文件瀏覽、
下載、刪除方案  
瀏覽的解決方法很多,“Location.href=”,“Navigate”,“Response.Redirect”都可以實(shí)現(xiàn),建議用客戶端的方法,原因是給服務(wù)器更多的時(shí)間生成Excel文件。  
下載的實(shí)現(xiàn)要麻煩一些。用網(wǎng)上現(xiàn)成的服務(wù)器端下載組件或自己定制開發(fā)一個(gè)組件是比較好的方案。另外一種方法是在客戶端操作Excel組件,由客戶端操作服務(wù)器端Excel文件另存至客戶端。這種方法要求客戶端開放不安全ActiveX控件的操作權(quán)限,考慮到通知每個(gè)客戶將服務(wù)器設(shè)置為可信站點(diǎn)的麻煩程度建議還是用第一個(gè)方法比較省事。  
刪除方案由三部分組成:  
A:             同一用戶生成的Excel文件用同一個(gè)文件名,文件名可用用戶ID號(hào)或SessionID號(hào)等可確信不重復(fù)字符串組成。這樣新文件生成時(shí)自動(dòng)覆蓋上一文件。  
B:             在Global.asa文件中設(shè)置Session_onEnd事件激發(fā)時(shí),刪除這個(gè)用戶的Excel暫存文件。  
C:             在Global.asa文件中設(shè)置Application_onStart事件激發(fā)時(shí),刪除暫存目錄下的所有文件。  
注:建議目錄結(jié)構(gòu)   Src   代碼目錄   Templet  
模板目錄   Temp   暫存目錄  

六、             附錄  
出錯(cuò)時(shí)Excel出現(xiàn)的死進(jìn)程出現(xiàn)是一件很頭疼的事情。在每個(gè)文件前加上“On   Error   Resume   Next”將有助于改善這種情況,因?yàn)樗鼤?huì)不管文件是否產(chǎn)生錯(cuò)誤都堅(jiān)持執(zhí)行到“Application.Quit”,保證每次程序執(zhí)行完不留下死進(jìn)程。   
5.ASP讀EXCEL2000的文章!!

<%
'=====================ASP讀取EXCEL注事項(xiàng)===========================
'i)將Excel97或Excel2000生成的XLS文件(book)看成一個(gè)數(shù)據(jù)庫,其中的每一個(gè)
工作表(sheet)看成數(shù)據(jù)庫表
'ii)ADO假設(shè)Excel中的第一行為字段名.所以你定義的范圍中必須要包括第一行的內(nèi)容
'iii)Excel中的行標(biāo)題(即字段名)不能夠包含數(shù)字. Excel的驅(qū)動(dòng)在遇到這種問題時(shí)就會(huì)出錯(cuò)的。例如你的行標(biāo)題名為“F1”
'iiii)如果你的Excel電子表格中某一列同時(shí)包含了文本和數(shù)字的話,那么Excel的ODBC驅(qū)動(dòng)將不能夠正常, 處理這一行的數(shù)據(jù)類型,你必須要保證該列的數(shù)據(jù)類型一致

Dim Conn,Driver,DBPath,Rs
' 建立Connection對(duì)象
Set Conn = Server.createObject("ADODB.Connection")
Driver = "Driver={Microsoft Excel Driver (*.xls)};"
DBPath = "DBQ=" & Server.MapPath( "test.xls" )
'調(diào)用Open 方法打開數(shù)據(jù)庫
Conn.Open Driver & DBPath

'DSN連接方式
'Conn.Open "Dsn=test"
'注意 表名一定要以下邊這種格試 "[表名$]" 書寫
Sql="select * from [Sheet1$] where 序號(hào)=0"
Set Rs=Conn.execute(Sql)

IF Rs.Eof And Rs.Bof Then
Response.write "沒有找到您需要的數(shù)據(jù)!!"
Else

Do While Not Rs.EOF

Response.write Rs("姓名")

Rs.MoveNext
Loop
End IF

Rs.Close
Set Rs=nothing
Conn.Close
Set Conn=Nothing
'Response.Write "成功!"
%>
========================================================
6.ASP與電子表格EXCEL的交互操作


Here we go again with another sample for Excel, this time we will be using ASP to create a chart. You all
asked me for it, now here is the solution. Thanks again for all your nice comments :)

First we set the type of script

<%@ LANGUAGE="VBscript" %>

Make the object, and set the object to an Excelsheet

Dim MyExcelChart
Set MyExcelChart = createObject("Excel.Sheet")

Now lets write the rest of the script, see the comments

' show or dont show excel to user, TRUE or FALSE
MyExcelChart.Application.Visible = True

' populate the cells
MyExcelChart.ActiveSheet.Range("B2:k2").Value = Array
("Week1", "Week2", "Week3", "Week4", "Week5", "Week6", "Week7", "Week8", "Week9", "Week10")
MyExcelChart.ActiveSheet.Range("B3:k3").Value = Array
("67", "87", "5", "9", "7", "45", "45", "54", "54", "10")
MyExcelChart.ActiveSheet.Range("B4:k4").Value = Array
("10", "10", "8", "27", "33", "37", "50", "54", "10", "10")
MyExcelChart.ActiveSheet.Range("B5:k5").Value = Array
("23", "3", "86", "64", "60", "18", "5", "1", "36", "80")
MyExcelChart.ActiveSheet.Cells(3,1).Value="Internet Explorer"
MyExcelChart.ActiveSheet.Cells(4,1).Value="Netscape"
MyExcelChart.ActiveSheet.Cells(5,1).Value="Other"

' select the contents that need to be in the chart
MyExcelChart.ActiveSheet.Range("b2:k5").select
    
' Add the chart
MyExcelChart.Charts.Add
' Format the chart, set type of chart, shape of the bars, show title, get the data for the chart, show
datatable, show legend
MyExcelChart.activechart.ChartType = 97
MyExcelChart.activechart.BarShape =3
MyExcelChart.activechart.HasTitle = True
MyExcelChart.activechart.ChartTitle.Text = "Visitors log for each week shown in browsers percentage"
MyExcelChart.activechart.SetSourceData MyExcelChart.Sheets("Sheet1").Range("A1:k5"),1
MyExcelChart.activechart.Location 1
MyExcelChart.activechart.HasDataTable = True
MyExcelChart.activechart.DataTable.ShowLegendKey = True

' Save the the excelsheet to excelface
MyExcelChart.SaveAs "c:chart.xls"
%>

Now lets complete the HTML tags.

<HTML>
<HEAD>
<TITLE>MyExcelChart</TITLE>
</HEAD>
<BODY>
</BODY>
</HTML>

This completes yer ASP page, look below for the complete code of myexcelchart.asp

<%@ LANGUAGE="VBscript" %>
<%
' create Object
Set MyExcelChart = createObject("Excel.Sheet")

' show or dont show excel to user, TRUE or FALSE
MyExcelChart.Application.Visible = True

' populate the cells
MyExcelChart.ActiveSheet.Range("B2:k2").Value = Array
("Week1", "Week2", "Week3", "Week4", "Week5", "Week6", "Week7", "Week8", "Week9", "Week10")
MyExcelChart.ActiveSheet.Range("B3:k3").Value = Array
("67", "87", "5", "9", "7", "45", "45", "54", "54", "10")
MyExcelChart.ActiveSheet.Range("B4:k4").Value = Array
("10", "10", "8", "27", "33", "37", "50", "54", "10", "10")
MyExcelChart.ActiveSheet.Range("B5:k5").Value = Array
("23", "3", "86", "64", "60", "18", "5", "1", "36", "80")
MyExcelChart.ActiveSheet.Cells(3,1).Value="Internet Explorer"
MyExcelChart.ActiveSheet.Cells(4,1).Value="Netscape"
MyExcelChart.ActiveSheet.Cells(5,1).Value="Other"

' select the contents that need to be in the chart
MyExcelChart.ActiveSheet.Range("b2:k5").select
    
' Add the chart
MyExcelChart.Charts.Add
' Format the chart, set type of chart, shape of the bars, show title, get the data for the chart, show
datatable, show legend
MyExcelChart.activechart.ChartType = 97
MyExcelChart.activechart.BarShape =3
MyExcelChart.activechart.HasTitle = True
MyExcelChart.activechart.ChartTitle.Text = "Visitors log for each week shown in browsers percentage"
MyExcelChart.activechart.SetSourceData MyExcelChart.Sheets("Sheet1").Range("A1:k5"),1
MyExcelChart.activechart.Location 1
MyExcelChart.activechart.HasDataTable = True
MyExcelChart.activechart.DataTable.ShowLegendKey = True


' Save the the excelsheet to chart.xls
MyExcelChart.SaveAs "c:chart.xls"


%>
<HTML>
<HEAD>
<TITLE>MyExcelChart</TITLE>
</HEAD>
<BODY>
</BODY>
</HTML>
=======================================================
6.asp實(shí)現(xiàn)在web中顯示電子表格數(shù)據(jù)(一)
顯示數(shù)據(jù)表格的應(yīng)用
   在用ASP語言開發(fā)的Web數(shù)據(jù)庫應(yīng)用程序中,ADO (ActiveX Data Objects) 已經(jīng)成為非常流行的工具,而且對(duì)于真正的關(guān)系型數(shù)據(jù)庫,比如Oracle、SQL Server,它都不會(huì)有局限性。ADO能夠存取多種不同的數(shù)據(jù)格式,MS Excel電子數(shù)據(jù)表格就是其中之一。

   關(guān)于這個(gè)應(yīng)用

   可供
下載的例程代碼中包括一個(gè)ASP文件ReadX1.asp,一個(gè)Excel文件TheWorkbook.xls。你也可以另外加入一些電子數(shù)據(jù)表文件。

   執(zhí)行ReadXl.asp頁面,將顯示出可用的電子數(shù)據(jù)表文件列表。選擇好一個(gè)文件,并提交表單后,你將會(huì)看到:

一個(gè)下拉菜單,其中是工作表名稱
一個(gè)下拉菜單,其中是命名的范圍
一個(gè)單元格范圍輸入框
第一個(gè)工作表的全部內(nèi)容
  

   可以選擇工作簿文件中的另外一個(gè)工作表,或者輸入符合Excel格式的單元格范圍數(shù)值,比如:D20:E21 或者 Sheet3!F12:J22。注意:在ADO和ODBC驅(qū)動(dòng)程序中,要用$符合替換分界符號(hào)!。

   實(shí)現(xiàn)步驟

   現(xiàn)在對(duì)這個(gè)應(yīng)用程序已經(jīng)有了初步的認(rèn)識(shí),下面開始討論ASP代碼,看看如何讀取電子數(shù)據(jù)表的數(shù)據(jù),如何找到電子數(shù)據(jù)簿
(workbook)文件中可用的電子數(shù)據(jù)表(worksheet)和范圍,并看看實(shí)現(xiàn)文件列表選擇的技術(shù)。這里假設(shè)你已經(jīng)熟悉了編寫HTML表單的技術(shù),所以對(duì)此不做詳細(xì)介紹。

   基本條件

   下面將涉及到ADO對(duì)象、方法、屬性、收集和常量。在服務(wù)器上安裝IIS后,ADO就存在了,并且還有相關(guān)文檔,地址是http://YourServer/IisHelp/ado210.chm (版本2.1),或者h(yuǎn)ttp://YourServer/IisHelp/ado/docs/(老版本1.5)。如果需要升級(jí)ADO,可以從http://www.microsoft.com/Data/download.htm
下載最新版本的MDAC工具包進(jìn)行安裝。

   實(shí)現(xiàn)“文件列表選擇”使用到了內(nèi)建的VBscript腳本對(duì)象,相關(guān)文檔可以查看http://YourServer/IisHelp/vbscript/htm/vbstoc.htm,如果想查看最新的文檔,請(qǐng)?jiān)L問http://msdn.microsoft.com/scripting
(版本5)。當(dāng)然,在服務(wù)器端和客戶端,你都不需要安裝MS Excel。

   讀取電子數(shù)據(jù)表(Worksheet)數(shù)據(jù)

   通過ADO讀取電子數(shù)據(jù)表與讀取數(shù)據(jù)庫表的方法基本是一樣的。從下圖可以看到,電子數(shù)據(jù)表的行被稱作記錄Records,列被稱作字段Fields。電子數(shù)據(jù)表或者單元格的范圍可以被看成表Tables,并按照記錄集recordsets進(jìn)行存取。

Spreadsheet Database HTML
   < table >
< tr >
< th >NameA< /th >
< th >NameB< /th >
< th >NameC< /th >
< /tr >< tr >
< td >1< /td >
< td >2< /td >
< td >3< /td >
< /tr >< tr >
< td >11< /td >
< td >12< /td >
< td >13< /td >
< /tr >
< /table >

   執(zhí)行下面的步驟,從數(shù)據(jù)庫表中讀取數(shù)據(jù)并顯示:

連接數(shù)據(jù)庫(同樣:打開數(shù)據(jù)簿文件)
讀取記錄集recordset(同樣:讀取一定范圍的單元格)
循環(huán)每一個(gè)記錄(同樣:每一行),經(jīng)過格式化,顯示
   建立ADO連接

   在連接數(shù)據(jù)庫或者打開文件前,需要了解一些信息。其中只要是設(shè)置名叫DSN的ODBC驅(qū)動(dòng),但為每一個(gè)數(shù)據(jù)表都建立這樣的ODBC驅(qū)動(dòng),是非常麻煩的,因?yàn)檫@需要在服務(wù)器的控制臺(tái)上通過“控制面板/ODBC設(shè)置”手工完成。

   幸好,ASP提供了替代DSN的
其他方法,它可以非常容易地在運(yùn)行時(shí)建立連接。比如,字符串“DRIVER={Microsoft Excel Driver?*.xls)};ReadOnly=1;DBQ=C:dirfile.xls",表示了替代DSN打開文件c:dirfile.xls,因此通過這種方法僅僅需要提供給ASP程序一個(gè)文件名即可。執(zhí)行下面的代碼,將從表單中讀取文件名,然后轉(zhuǎn)換為全路徑,接著生成連接字符串,最后建立并打開這個(gè)連接。

vXlFile = Request("XlBook")
vXlFilePath = Server.MapPath(vXlFile) ' assumes file in current directory
vConnString = "DRIVER={Microsoft Excel Driver (*.xls)};ReadOnly=1;DBQ=" & _
               vXlFilePath
Set oConn = Server.createObject("ADODB.Connection")
oConn.Open vConnString
   如果想查看更多的非DSN連接信息,請(qǐng)打開Windows或者NT System目錄下的幫助文件Odbcjet.hlp。

   讀取記錄集

   連接上電子數(shù)據(jù)簿文件后,讀取一定范圍的單元格數(shù)據(jù)就很簡單了。盡管不是必須的,但還是建議:用符合“[” 和 “]”包含住單元格的范圍定義。只所以這么做,是以防在數(shù)據(jù)庫的操作中產(chǎn)生非法的符合。

vXlRange = Request("XlRange")
Set oRs = oConn.execute("[" & vXlRange & "]")

   執(zhí)行上面的語句,將返回記錄集對(duì)象,其中包括范圍內(nèi)單元格的所有可用信息, 記錄集的數(shù)值和描述數(shù)據(jù)的元數(shù)據(jù)。

該文章在 2023/11/28 9:45:40 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲(chǔ)管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved