asp表格导出EXCEL的方法修改Word文档下载推荐.docx
- 文档编号:16349384
- 上传时间:2022-11-23
- 格式:DOCX
- 页数:9
- 大小:20.49KB
asp表格导出EXCEL的方法修改Word文档下载推荐.docx
《asp表格导出EXCEL的方法修改Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《asp表格导出EXCEL的方法修改Word文档下载推荐.docx(9页珍藏版)》请在冰豆网上搜索。
200"
border="
1"
tr>
td>
11<
/td>
/tr>
22<
33<
44 <
44<
/table>
SCRIPTLANGUAGE="
JavaScript"
!
--
functionAutomateExcel()
{
//StartExcelandgetApplicationobject.
varoXL=newActiveXObject("
Excel.Application"
);
//Getanewworkbook.
varoWB=oXL.Workbooks.Add();
varoSheet=oWB.ActiveSheet;
vartable=document.all.data;
varhang=table.rows.length;
varlie=table.rows(0).cells.length;
//Addtableheadersgoingcellbycell.
for(i=0;
i<
hang;
i++)
for(j=0;
j<
lie;
j++)
oSheet.Cells(i+1,j+1).Value=table.rows(i).cells(j).innerText;
}
oXL.Visible=true;
oXL.UserControl=true;
//-->
/SCRIPT>
导出到Word代码
scriptlanguage="
vbscript"
SubbuildDoc
settable=document.all.data
row=table.rows.length
column=table.rows
(1).cells.length
SetobjWordDoc=CreateObject("
Word.Document"
)
&
#39;
objWordDoc.Application.Documents.AddtheTemplate,False
objWordDoc.Application.Visible=True
DimtheArray(20,10000)
fori=0torow-1
forj=0tocolumn-1
theArray(j+1,i+1)=table.rows(i).cells(j).innerTEXT
next
objWordDoc.Application.ActiveDocument.Paragraphs.Add.Range.InsertBefore("
综合查询结果集"
)//显示表格标题
SetrngPara=objWordDoc.Application.ActiveDocument.Paragraphs
(1).Range
WithrngPara
.Bold=True//将标题设为粗体
.ParagraphFormat.Alignment=1//将标题居中
.Font.Name="
隶书"
//设定标题字体
.Font.Size=18//设定标题字体大小
EndWith
SetrngCurrent=objWordDoc.Application.ActiveDocument.Paragraphs(3).Range
SettabCurrent=ObjWordDoc.Application.ActiveDocument.Tables.Add(rngCurrent,row,column)
fori=1tocolumn
objWordDoc.Application.ActiveDocument.Tables
(1).Rows
(1).Cells(i).Range.InsertAftertheArray(i,1)
objWordDoc.Application.ActiveDocument.Tables
(1).Rows
(1).Cells(i).Range.ParagraphFormat.alignment=1
Fori=1tocolumn
Forj=2torow
objWordDoc.Application.ActiveDocument.Tables
(1).Rows(j).Cells(i).Range.InsertAftertheArray(i,j)
objWordDoc.Application.ActiveDocument.Tables
(1).Rows(j).Cells(i).Range.ParagraphFormat.alignment=1
Next
EndSub
二、第二种
如何在asp脚本里做个按钮可以将数据导出到excel表里
-------------------------------------------------------------------------------方法一
浏览器表格导出到Excel<
javascript:
方法二
%@LANGUAGE="
VBSCRIPT"
%>
%optionexplicit%>
%
%>
--#includefile="
conn.asp"
-->
HTML>
HEAD>
metahttp-equiv="
Content-Type"
content="
text/html;
charset=gb2312"
TITLE>
生成EXCEL文件<
/TITLE>
/HEAD>
body>
dimrs,sql,filename,fs,myfile,x,link
Setfs=server.CreateObject("
scripting.filesystemobject"
filename="
f:
\online.xls"
iffs.FileExists(filename)then
fs.DeleteFile(filename)
endif
setmyfile=fs.CreateTextFile(filename,true)
Setrs=Server.CreateObject("
ADODB.Recordset"
sql="
select*fromtable"
rs.Opensql,conn
ifrs.EOFandrs.BOFthen
else
dimstrLine,responsestr
strLine="
Foreachxinrs.fields
strLine=strLine&
x.name&
chr(9)
myfile.writelinestrLine
DowhileNotrs.EOF
foreachxinrs.Fields
x.value&
rs.MoveNext
loop
rs.Close
setrs=nothing
conn.close
setconn=nothing
setmyfile=nothing
Setfs=Nothing
/BODY>
/HTML>
//是从数据库里直接读出来再转到EXCEL中.要在页面上显示稍改下就成.
如何关闭excel进程
dimexcelapp
setexcelapp=createobject("
excel.application"
......
excelapp.quit&
必备,建议上面加上onerrorresumenext防止未知错误不能执行到此行
setexcelapp=nothing
三、强人介绍的四种方法
一、使用OWC什么是OWCOWC是OfficeWebCompent的缩写,即Microsoft的OfficeWeb组件,它为在Web中绘制图形提供了灵活的同时也是最基本的机制。
在一个intranet环境中,如果可以假设客户机上存在特定的浏览器和一些功能强大的软件(如IE5和Office2000),那么就有能力利用OfficeWeb组件提供一个交互式图形开发环境。
这种模式下,客户端工作站将在整个任务中分担很大的比重。
<%OptionExplicit
ClassExcelGen
PrivateobjSpreadsheet
PrivateiColOffset
PrivateiRowOffset
SubClass_Initialize()
SetobjSpreadsheet=Server.CreateObject("
OWC.Spreadsheet"
iRowOffset=2
iColOffset=2
SubClass_Terminate()
SetobjSpreadsheet=Nothing&
Cleanup
PublicPropertyLetColumnOffset(iColOff)
IfiColOff>0then
iColOffset=iColOff
Else
EndIf
EndProperty
PublicPropertyLetRowOffset(iRowOff)
IfiRowOff>0then
iRowOffset=iRowOff
EndPropertySubGenerateWorksheet(objRS)
PopulatestheExcelworksheetbasedonaRecordset&
scontents
Startbydisplayingthetitles
IfobjRS.EOFthenExitSub
DimobjField,iCol,iRow
iCol=iColOffset
iRow=iRowOffset
ForEachobjFieldinobjRS.Fields
objSpreadsheet.Cells(iRow,iCol).Value=objField.Name
objSpreadsheet.Columns(iCol).AutoFitColumns
设置Excel表里的字体
objSpreadsheet.Cells(iRow,iCol).Font.Bold=True
objSpreadsheet.Cells(iRow,iCol).Font.Italic=False
objSpreadsheet.Cells(iRow,iCol).Font.Size=10
objSpreadsheet.Cells(iRow,iCol).Halignment=2&
居中
iCol=iCol+1
Next&
objField
Displayallofthedata
DoWhileNotobjRS.EOF
iRow=iRow+1
IfIsNull(objField.Value)then
objSpreadsheet.Cells(iRow,iCol).Value="
objSpreadsheet.Cells(iRow,iCol).Value=objField.Value
objSpreadsheet.Cells(iRow,iCol).Font.Bold=False
objRS.MoveNext
Loop
EndSubFunctionSaveWorksheet(strFileName)
Savetheworksheettoaspecifiedfilename
OnErrorResumeNext
CallobjSpreadsheet.ActiveSheet.Export(strFileName,0)
SaveWorksheet=(Err.Number=0)
EndFunction
EndClass
DimobjRS
SetobjRS=Server.CreateObject("
objRS.Open"
SELECT*FROMxxxx"
"
rovider=SQLOLEDB.1
ersistSecurity
Info=True;
UserID=xxxx
assword=xxxx;
InitialCatalog=xxxx;
Datasource=xxxx;
DimSaveName
SaveName=Request.Cookies("
savename"
)("
name"
DimobjExcel
DimExcelPath
ExcelPath="
Excel\"
&
SaveName&
"
.xls"
SetobjExcel=NewExcelGen
objExcel.RowOffset=1
objExcel.ColumnOffset=1
objExcel.GenerateWorksheet(objRS)
IfobjExcel.SaveWorksheet(Server.MapPath(ExcelPath))then
Response.Write"
<html><bodybgcolor=&
gainsboro&
text=&
#000000&
>已保存为Excel文件.
<ahref=&
server.URLEncode(ExcelPath)&
>下载</a>"
在保存过程中有错误!
SetobjExcel=Nothing
objRS.Close
SetobjRS=Nothing
%>
二、用Excel的Application组件在客户端导出到Excel或Word
注意:
两个函数中的“data“是网页中要导出的table的id
<inputtype="
>
导出到Excel代码
<SCRIPTLANGUAGE="
javascript"
<!
i<hang;
j<lie;
oSheet.Cells(i+1,j+1).value=table.rows(i).cells(j).innerText;
//-->
</SCRIPT>
导出到Word代码
<scriptlanguage="
SettabCurrent=ObjWordDoc.Application.ActiveDocument.Tables.Add(rngCurrent,row
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- asp 表格 导出 EXCEL 方法 修改