ndfweb.cn

ASP與電子表格EXCEL的交互操作


2010-01-01 10:50:12 (6399)



ASP讀EXCEL2000的文章!!

<%
'=====================ASP讀取EXCEL注事項===========================
'i)將Excel97或Excel2000生成的XLS文件(book)看成一個數據庫,其中的每一個工作表(sheet)看成數據庫表
'ii)ADO假設Excel中的第一行為字段名.所以你定義的範圍中必須要包括第一行的內容
'iii)Excel中的行標題(即字段名)不能夠包含數字. Excel的驅動在遇到這種問題時就會出錯的。例如你的行標題名為“F1”
'iiii)如果你的Excel電子表格中某一列同時包含了文本和數字的話,那麼Excel的ODBC驅動將不能夠正常, 處理這一行的數據類型,你必須要保證該列的數據類型一致
★點擊設計★ http://www.djasp.Net 全力打造WEB技術站點,歡迎大家訪問!
Dim Conn,Driver,DBPath,Rs
' 建立Connection對象
Set Conn = Server.CreateObject("ADODB.Connection")
Driver = "Driver={Microsoft Excel Driver (*.xls)};"
DBPath = "DBQ=" & Server.MapPath( "test.xls" )
'調用Open 方法打開數據庫
Conn.Open Driver & DBPath
本文由 點擊設計 http://www.djasp.Net 收集整理。謝絕無聊之人轉載!
'DSN連接方式
'Conn.Open "Dsn=test"
'注意 表名一定要以下邊這種格試 "[表名$]" 書寫
Sql="Select * From [Sheet1$] where 序號=0"
Set Rs=Conn.Execute(Sql)
盜版它人網站的內容可恥,您查看的內容來源於★點擊設計★www.djasp.Net
IF Rs.Eof And Rs.Bof Then
Response.write "沒有找到您需要的數據!!"
Else
★點擊設計★ http://www.djasp.Net 全力打造WEB技術站點,歡迎大家訪問!
Do While Not Rs.EOF
盜版它人網站的內容可恥,您查看的內容來源於★點擊設計★www.djasp.Net
Response.write Rs("姓名")
盜版它人網站的內容可恥,您查看的內容來源於★點擊設計★www.djasp.Net
Rs.MoveNext
Loop
End IF
本文由 點擊設計 http://www.djasp.Net 收集整理。謝絕無聊之人轉載!
Rs.Close
Set Rs=nothing
Conn.Close
Set Conn=Nothing
'Response.Write "成功!"
%>
========================================================
6.ASP與電子表格EXCEL的交互操作

盜版它人網站的內容可恥,您查看的內容來源於★點擊設計★www.djasp.Net
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 :)
此內容來源於 ★點擊設計★ http://www.djasp.Net 網頁編程資訊官方網站!
First we set the type of script
★點擊設計★ http://www.djasp.Net 專業的WEB編程資訊技術站點,歡迎訪問!
<%@ LANGUAGE="VBSCRIPT" %>
此內容來源於 ★點擊設計★ http://www.djasp.Net 網頁編程資訊官方網站!
Make the object, and set the object to an Excelsheet
請勿盜版 ★點擊設計★ http://www.djasp.Net 網站上的內容,謝謝合作!
Dim MyExcelChart
Set MyExcelChart = CreateObject("Excel.Sheet")
★點擊設計★ http://www.djasp.Net 專業的WEB編程資訊技術站點,歡迎訪問!
Now lets write the rest of the script, see the comments
此內容來源於 ★點擊設計★ http://www.djasp.Net 網頁編程資訊官方網站!
' show or dont show excel to user, TRUE or FALSE
MyExcelChart.Application.Visible = True
★點擊設計★ http://www.djasp.Net 全力打造WEB技術站點,歡迎大家訪問!
' 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"
此內容來源於 ★點擊設計★ http://www.djasp.Net 網頁編程資訊官方網站!
' 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
本文由 點擊設計 http://www.djasp.Net 收集整理。謝絕無聊之人轉載!
' Save the the excelsheet to excelface
MyExcelChart.SaveAs "c:chart.xls"
%>
本文由 點擊設計 http://www.djasp.Net 收集整理。謝絕無聊之人轉載!
Now lets complete the HTML tags.
請勿盜版 ★點擊設計★ http://www.djasp.Net 網站上的內容,謝謝合作!
<HTML>
<HEAD>
<TITLE>MyExcelChart</TITLE>
</HEAD>
<BODY>
</BODY>
</HTML>
盜版它人網站的內容可恥,您查看的內容來源於★點擊設計★www.djasp.Net
This completes yer ASP page, look below for the complete code of myexcelchart.asp
此內容來源於 ★點擊設計★ http://www.djasp.Net 網頁編程資訊官方網站!
<%@ LANGUAGE="VBSCRIPT" %>
<%
' Create Object
Set MyExcelChart = CreateObject("Excel.Sheet")
此內容來源於 ★點擊設計★ http://www.djasp.Net 網頁編程資訊官方網站!
' show or dont show excel to user, TRUE or FALSE
MyExcelChart.Application.Visible = True
本文由 點擊設計 http://www.djasp.Net 收集整理。謝絕無聊之人轉載!
' 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"
★點擊設計★ http://www.djasp.Net 全力打造WEB技術站點,歡迎大家訪問!
' 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
本文由 點擊設計 http://www.djasp.Net 收集整理。謝絕無聊之人轉載!

' Save the the excelsheet to chart.xls
MyExcelChart.SaveAs "c:chart.xls"
請勿盜版 ★點擊設計★ http://www.djasp.Net 網站上的內容,謝謝合作!

%>
<HTML>
<HEAD>
<TITLE>MyExcelChart</TITLE>
</HEAD>
<BODY>
</BODY>
</HTML>
=======================================================
7.asp實現在web中顯示電子表格數據(一)
顯示數據表格的應用
   在用ASP語言開發的Web數據庫應用程序中,ADO (ActiveX Data Objects) 已經成為非常流行的工具,而且對於真正的關係型數據庫,比如Oracle、SQL Server,它都不會有局限性。 ADO能夠存取多種不同的數據格式,MS Excel電子數據表格就是其中之一。
請勿盜版 ★點擊設計★ http://www.djasp.Net 網站上的內容,謝謝合作!
   關於這個應用
★點擊設計★ http://www.djasp.Net 全力打造WEB技術站點,歡迎大家訪問!
   可供下載的例程代碼中包括一個ASP文件ReadX1.asp,一個Excel文件TheWorkbook.xls。你也可以另外加入一些電子數據表文件。
★點擊設計★ http://www.djasp.Net 專業的WEB編程資訊技術站點,歡迎訪問!
   執行ReadXl.asp頁麵,將顯示出可用的電子數據表文件列表。選擇好一個文件,並提交表單後,你將會看到:
★點擊設計★ http://www.djasp.Net 專業的WEB編程資訊技術站點,歡迎訪問!
一個下拉菜單,其中是工作表名稱
一個下拉菜單,其中是命名的範圍
一個單元格範圍輸入框
第一個工作表的全部內容
  
此內容來源於 ★點擊設計★ http://www.djasp.Net 網頁編程資訊官方網站!
   可以選擇工作簿文件中的另外一個工作表,或者輸入符合Excel格式的單元格範圍數值,比如:D20:E21 或者 Sheet3!F12:J22。注意:在ADO和ODBC驅動程序中,要用$符合替換分界符號!。
本文由 ★點擊設計★ http://www.djasp.Net 收集整理。謝絕無聊之人轉載!
   實現步驟
此內容來源於 ★點擊設計★ http://www.djasp.Net 網頁編程資訊官方網站!
   現在對這個應用程序已經有了初步的認識,下麵開始討論ASP代碼,看看如何讀取電子數據表的數據,如何找到電子數據簿
(workbook)文件中可用的電子數據表(worksheet)和範圍,並看看實現文件列表選擇的技術。這裏假設你已經熟悉了編寫HTML表單的技術,所以對此不做詳細介紹。
★點擊設計★ http://www.djasp.Net 全力打造WEB技術站點,歡迎大家訪問!
   基本條件
★點擊設計★ http://www.djasp.Net 專業的WEB編程資訊技術站點,歡迎訪問!
   下麵將涉及到ADO對象、方法、屬性、收集和常量。在服務器上安裝IIS後,ADO就存在了,並且還有相關文檔,地址是http://YourServer/IisHelp/ado210.chm (版本2.1),或者http://YourServer/IisHelp/ado/docs/(老版本1.5)。如果需要升級ADO,可以從http://www.microsoft.com/Data/download.htm下載最新版本的MDAC工具包進行安裝。
★點擊設計★ http://www.djasp.Net 全力打造WEB技術站點,歡迎大家訪問!
   實現“文件列表選擇”使用到了內建的VBScript腳本對象,相關文檔可以查看http://YourServer/IisHelp/vbscript/htm/vbstoc.htm,如果想查看最新的文檔,請訪問http://msdn.microsoft.com/scripting
(版本5)。當然,在服務器端和客戶端,你都不需要安裝MS Excel。
盜版它人網站的內容可恥,您查看的內容來源於★點擊設計★www.djasp.Net
   讀取電子數據表(Worksheet)數據
此內容來源於 ★點擊設計★ http://www.djasp.Net 網頁編程資訊官方網站!
   通過ADO讀取電子數據表與讀取數據庫表的方法基本是一樣的。從下圖可以看到,電子數據表的行被稱作記錄Records,列被稱作字段Fields。電子數據表或者單元格的範圍可以被看成表Tables,並按照記錄集recordsets進行存取。
本文由 ★點擊設計★ http://www.djasp.Net 收集整理。謝絕無聊之人轉載!
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 >
本文由 點擊設計 http://www.djasp.Net 收集整理。謝絕無聊之人轉載!
   執行下麵的步驟,從數據庫表中讀取數據並顯示:
請勿盜版 ★點擊設計★ http://www.djasp.Net 網站上的內容,謝謝合作!
連接數據庫(同樣:打開數據簿文件)
讀取記錄集recordset(同樣:讀取一定範圍的單元格)
循環每一個記錄(同樣:每一行),經過格式化,顯示
   建立ADO連接
盜版它人網站的內容可恥,您查看的內容來源於★點擊設計★www.djasp.Net
   在連接數據庫或者打開文件前,需要了解一些信息。其中隻要是設置名叫DSN的ODBC驅動,但為每一個數據表都建立這樣的ODBC驅動,是非常麻煩的,因為這需要在服務器的控製台上通過“控製麵板/ODBC設置”手工完成。
請勿盜版 ★點擊設計★ http://www.djasp.Net 網站上的內容,謝謝合作!
   幸好,ASP提供了替代DSN的其他方法,它可以非常容易地在運行時建立連接。比如,字符串“DRIVER={Microsoft Excel Driver?*.xls)};ReadOnly=1;DBQ=C:dirfile.xls",表示了替代DSN打開文件c:dirfile.xls,因此通過這種方法僅僅需要提供給ASP程序一個文件名即可。執行下麵的代碼,將從表單中讀取文件名,然後轉換為全路徑,接著生成連接字符串,最後建立並打開這個連接。
此內容來源於 ★點擊設計★ http://www.djasp.Net 網頁編程資訊官方網站!
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連接信息,請打開Windows或者NT System目錄下的幫助文件Odbcjet.hlp。
此內容來源於 ★點擊設計★ http://www.djasp.Net 網頁編程資訊官方網站!
   讀取記錄集
本文由 ★點擊設計★ http://www.djasp.Net 收集整理。謝絕無聊之人轉載!
   連接上電子數據簿文件後,讀取一定範圍的單元格數據就很簡單了。盡管不是必須的,但還是建議:用符合“[” 和 “]”包含住單元格的範圍定義。隻所以這麼做,是以防在數據庫的操作中產生非法的符合。
盜版它人網站的內容可恥,您查看的內容來源於★點擊設計★www.djasp.Net
vXlRange = Request("XlRange")
Set oRs = oConn.Execute("[" & vXlRange & "]")
本文由 點擊設計 http://www.djasp.Net 收集整理。謝絕無聊之人轉載!
   執行上麵的語句,將返回記錄集對象,其中包括範圍內單元格的所有可用信息, 記錄集的數值和描述數據的元數據。
本文版权:http://www.ndfweb.cn/news-493.html
  NDF俱乐部
  国际域名注册
  建站咨询
简体中文 NDF网站建设淘宝店 | ICO图标在线生成 | 外贸网站建设 | 联系我们
©2007-2025 NDF Corporation 鲁ICP备08005967号 Sitemap - RSSRSS订阅