选择显示字体大小

asp教程 - 用asp将数据读数导出excel文件的四种方法 -

一、用owc
什么是owc?
  owc是office web compent的缩写,即microsoft的office web组件,它为在web中绘制图形提供

了灵活的同时也是最基本的机制。在一个intr.net环境中,如果可以假设客户机上存在特定的浏览器和一

些功能强大的软件(如ie5和office 2000),那么就有能力利用office web组件提供一个交互式图形开

发环境。这种模式下,客户端工作站将在整个任务中分担很大的比重。
有关的详细介绍也可在本站找到。
<%option explicit
class excelgen
private objspreadsheet

private icoloffset

private irowoffset
sub class_initialize()
set objspreadsheet = server.createobject(&quot;owc.spreadsheet&quot;)
irowoffset = 2
icoloffset = 2
end sub

sub class_terminate()
set objspreadsheet = nothing 'clean up
end sub

public property let columnoffset(icoloff)
if icoloff > 0 then
icoloffset = icoloff
else
icoloffset = 2
end if
end property

public property let rowoffset(irowoff)
if irowoff > 0 then
irowoffset = irowoff
else
irowoffset = 2
end if
end property sub generateworksheet(objrs)
'populates the excel worksheet based on a recordset's contents
'start by displaying the titles
if objrs.eof then exit sub
dim objfield, icol, irow
icol = icoloffset
irow = irowoffset
for each objfield in objrs.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
'display all of the data
do while not objrs.eof
irow = irow + 1
icol = icoloffset
for each objfield in objrs.fields
if isnull(objfield.value) then
objspreadsheet.cells(irow, icol).value = &quot;&quot;
else
objspreadsheet.cells(irow, icol).value = objfield.value
objspreadsheet.columns(icol).autofitcolumns
objspreadsheet.cells(irow, icol).font.bold = false
objspreadsheet.cells(irow, icol).font.italic = false
objspreadsheet.cells(irow, icol).font.size = 10
end if
icol = icol + 1
next 'objfield
objrs.movenext
loop
end sub function saveworksheet(strfilename)

'save the worksheet to a specified filename
on error resume next
call objspreadsheet.activesheet.export(strfilename, 0)
saveworksheet = (err.number = 0)
end function
end class

dim objrs
set objrs = server.createobject(&quot;adodb.recordset&quot;)
objrs.open &quot;select * from xxxx&quot;, &quot;provider=sqloledb.1;persist security

info=true;user id=xxxx;password=xxxx;initial catalog=xxxx;data source=xxxx;&quot;
dim savename
savename = request.cookies(&quot;savename&quot;)(&quot;name&quot;)
dim objexcel
dim excelpath
excelpath = &quot;excel\&quot; & savename & &quot;.xls&quot;
set objexcel = new excelgen
objexcel.rowoffset = 1
objexcel.columnoffset = 1
objexcel.generateworksheet(objrs)
if objexcel.saveworksheet(server.mappath(excelpath)) then
'response.write &quot;<html><body bgcolor='gainsboro' text='#000000'>已保存为excel文件.

<a href='&quot; & server.urlencode(excelpath) & &quot;'>下载</a>&quot;
else
response.write &quot;在保存过程中有错误!&quot;
end if
set objexcel = nothing
objrs.close
set objrs = nothing
%>


二、用excel的application组件在客户端导出到excel或word
注意:两个函数中的“data“是网页中要导出的table的 id
<input type=&quot;hidden&quot; name=&quot;out_word&quot; onclick=&quot;vbscript:builddoc&quot; value=&quot;导出到word&quot; class=&quot;notprint&quot;>
<input type=&quot;hidden&quot; name=&quot;out_excel&quot; onclick=&quot;automateexcel();&quot; value=&quot;导出到excel&quot; class=&quot;notprint&quot;>

导出到excel代码
<script language=&quot;javascript&quot;>
<!--
function automateexcel()
{
// start excel and get application object.
var oxl = new activexobject(&quot;excel.application&quot;);
// get a new workbook.
var owb = oxl.workbooks.add();
var osheet = owb.activesheet;
var table = document.all.data;
var hang = table.rows.length;

var lie = table.rows(0).cells.length;

// add table headers going cell by cell.
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代码
<script language=&quot;vbscript&quot;>
sub builddoc
set table = document.all.data
row = table.rows.length
column = table.rows(1).cells.length

set objworddoc = createobject(&quot;word.document&quot;)

objworddoc.application.documents.add thetemplate, false
objworddoc.application.visible=true

dim thearray(20,10000)
for i=0 to row-1
for j=0 to column-1
thearray(j+1,i+1) = table.rows(i).cells(j).innertext
next
next
objworddoc.application.activedocument.paragraphs.add.range.insertbefore(&quot;综合查询结果集&quot;) //显示表格标题

objworddoc.application.activedocument.paragraphs.add.range.insertbefore(&quot;&quot;)
set rngpara = objworddoc.application.activedocument.paragraphs(1).range
with rngpara
.bold = true //将标题设为粗体
.paragraphformat.alignment = 1 //将标题居中
.font.name = &quot;隶书&quot; //设定标题字体
.font.size = 18 //设定标题字体大小
end with
set rngcurrent = objworddoc.application.activedocument.paragraphs(3).range
set tabcurrent = objworddoc.application.activedocument.tables.add(rngcurrent,row,column)

for i = 1 to column

objworddoc.application.activedocument.tables(1).rows(1).cells(i).range.insertafter thearray(i,1)
objworddoc.application.activedocument.tables(1).rows(1).cells(i).range.paragraphformat.alignment=1
next
for i =1 to column
for j = 2 to row
objworddoc.application.activedocument.tables(1).rows(j).cells(i).range.insertafter thearray(i,j)
objworddoc.application.activedocument.tables(1).rows(j).cells(i).range.paragraphformat.alignment=1
next
next

end sub
</script>


三、直接在ie中打开,再存为excel文件。
把读出的数据用<table>格式,在网页中显示出来,同时,加上下一句即可把excel表在客客户端显示。
<%response.contenttype =&quot;application/vnd.ms-excel&quot;%>
注意:显示的页面中,只把<table>输出,最好不要输出其他表格以外的信息。


四、导出以半角逗号隔开的csv
用fso方法生成文本文件的方法,生成一个扩展名为csv文件。此文件,一行即为数据表的一行。生成数据

表字段用半角逗号隔开。
有关fso生成文本文件的方法,在此就不做介绍了。相关文档,可本站找到。

csv文件介绍 (逗号分隔文件)
选择该项系统将创建一个可供下载的csv 文件; csv是最通用的一种文件格式,它可以非常容易地被导入各种pc表格及数据库中。
请注意即使选择表格作为输出格式,仍然可以将结果下载csv文件。在表格输出屏幕的底部,显示有 &quot;csv 文件&quot;选项,点击它即可下载该文件。
如果您把浏览器配置为将您的电子表格软件与文本(txt)/逗号分隔文件(csv) 相关联,当您下载该文件时,该文件将自动打开。下载下来后,如果本地已安装excel,点击此文件,即可自动用excel软件打开此文件。


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons