asp如何動態將查詢資料產生excel

來源:互聯網
上載者:User

'*************************************************************************************************************
'----------------------------------------- asp 匯出Excel ---------------------------- 
'*************************************************************************************************************

dim s,sql,filename,fs,myfile,x  

Set fs = server.CreateObject("scripting.filesystemobject")  
'--假設你想讓產生的EXCEL檔案做如下的存放  
filename = Server.MapPath("order.xls")  
'--如果原來的EXCEL檔案存在的話刪除它  
if fs.FileExists(filename) then  
    fs.DeleteFile(filename)  
end  if  
'--建立EXCEL檔案  
set myfile = fs.CreateTextFile(filename,true)  

'Set rs = Server.CreateObject("ADODB.Recordset")  
'--從資料庫中把你想放到EXCEL中的資料查出來  
'sql = "select * from Tb_Execl order by id desc"  
'rs.Open  sql,conn  
StartTime = Request("StartTime") 
EndTime = Request("EndTime") 
StartEndTime = "AddTime between #"& StartTime &" 00:00:00# and #"& EndTime &" 23:59:59#" 

strSql = "select * from ljphs200 " 
Set rstData =conn.execute(strSql) 
if not rstData.EOF and not rstData.BOF then  
    dim  trLine,responsestr  
    strLine=""  
    For each x in rstData.fields  
        strLine = strLine & x.name & chr(9)  
    Next  

'--將表的列名先寫入EXCEL  
   myfile.writeline strLine  

   Do while Not rstData.EOF  
        strLine=""  

        for each x in rstData.Fields  
            strLine = strLine & x.value &  chr(9)  
        next  
          '--將表的值先寫入EXCEL  
        myfile.writeline  strLine
        rstData.MoveNext  
    loop  

end if  

Response.Write  "產生EXCEL檔案成功,點擊 <a href=""order.xls"" target=""_blank"">下載 </a>!" 

rstData.Close  
set rstData = nothing 
Conn.Close 
Set Conn = nothing 

'*************************************************************************************************************
'----------------------------------------- asp 讀Excel表 ---------------------------- 
'*************************************************************************************************************

Dim PatnNow 
PatnNow="uploadfile/ultrawebgrid1.xls" 

'=====================ASP讀取EXCEL注事項=========================== 
'i)將Excel97或Excel2000產生的XLS檔案(book)看成一個資料庫,其中的每一個工作表(sheet)看成資料庫表 
'ii)ADO假設Excel中的第一行為欄位名.所以你定義的範圍中必須要包括第一行的內容 
'iii)Excel中的列名(即欄位名)不能夠包含數字. Excel的驅動在遇到這種問題時就會出錯的。例如你的列名名為“F1” 
'iiii)如果你的Excel試算表中某一列同時包含了文本和數位話,那麼Excel的ODBC驅動將不能夠正常, 處理這一行的資料類型, 
'你必須要保證該列的資料類型一致 
'=========================================================== 

Dim ConnXls,Driver,DBPath,Rs 
' 建立Connection對象 
Set ConnXls = Server.CreateObject("ADODB.Connection") 
Driver = "Driver={Microsoft Excel Driver (*.xls)};" 
DBPath = "DBQ=" & Server.MapPath(PatnNow) 
'調用Open 方法開啟資料庫 
ConnXls.Open Driver & DBPath 

'DSN串連方式 
'ConnXls.Open "Dsn=test" 
'注意 表名一定要以下邊這種格試 "[表名$]" 書寫 
Sql="Select * From [Sheet1$] " 
Set Rs=ConnXls.Execute(Sql) 

IF Rs.Eof And Rs.Bof Then 
    Response.write " <br> <br>沒有找到您需要的資料!!" 
  Else 
    Do While Not Rs.EOF 
    'conn.execute"insert into YuFuFei (HaoMa,YuENow,YuENowTime,YuEOld,YuEOldTime,State) values ('"&Rs("號碼")&"','"&Rs("當前餘額(分)")&"','"&Rs("當前餘額時間")&"','"&Rs("上次餘額(分)")&"','"&Rs("上次餘額時間")&"','"&Rs("目前狀態")&"')" 
    'Response.write Rs("接駁號碼")&" <br>" 
    Rs.MoveNext 
  Loop 
End IF 

Rs.Close 
Set Rs=nothing 
ConnXls.Close 
Set ConnXls=Nothing 

Response.Write  "<br/>----------------------------------成功!----------------------------------" 

conn.close 
set conn=nothing 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.