asp 导出excel数据 fso 单元格格式
<!--#include file="../conn.asp"-->
<%
dim s,sql,filename,fs,myfile,x
Set fs = server.CreateObject("scripting.filesystemobject")
'--假設你想讓生成的EXCEL文件做如下的存放
filename = Server.MapPath("users.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 myeky_myusr "
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
myfile.writeline strLine
rstData.MoveNext
loop
end if
Response.Write "生成EXCEL文件成功,點擊 <a href=""users.xls"" target=""_blank"">下載 </a>!"
rstData.Close
set rstData = nothing
Conn.Close
Set Conn = nothing
%>
問題:
生成Excel文件中的數據如:日期時間型 默認顯示了8個# ; 值全是數字超長后20071022130515理應正常顯示20071022130515,默認顯示:2.0071e+13;
如何導出Excel文件后。日期型默認顯示2007-10-23而非8個#,數值超長顯示正常呢。
1,導出的時候如何 設置導出 單元格格式
2,如何控制列寬列高;
3,如何在導出時合并單元格;
這個問題第1個回答:
數字加上',可以正常顯示全部數字
其他在VB里寫過:
Dim mExApp As Excel.Application '應用
Dim mExBook As Excel.Workbook '工作薄
Dim mExSheet As Excel.Worksheet '工作表
這個問題第2個回答:
Set mExApp = CreateObject("Excel.Application") '定義Xls對象
Set mExBook = mExApp.Workbooks.Open(fielpath & "/" & xlfielname & ".xls") '定義工作簿對象
Set mExSheet = mExBook.Worksheets(1) '定義工作表對象
mExSheet.Cells.NumberFormatLocal = "@" '設置為文本格式
.....
'自動調整列
For Column = 1 To rstField
mExSheet.Columns(Column).AutoFit
Next
這個問題第3個回答:
3,如何在導出時合并單元格;
關注
總結
以上是生活随笔為你收集整理的asp 导出excel数据 fso 单元格格式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ASP导出Excel数据的四种方法
- 下一篇: asp导出EXCEL数字格式及自动适应宽