ASP导出Excel数据的四种方法

2016-01-29 17:45 72 1 收藏

ASP导出Excel数据的四种方法,ASP导出Excel数据的四种方法

【 tulaoshi.com - ASP 】

 

  一、使用OWC

  什么是OWC?

  OWC是Office Web Compent的缩写,即Microsoft的Office Web组件,它为在Web中绘制图形提供了灵活的同时也是最基本的机制。在一个intranet环境中,如果可以假设客户机上存在特定的浏览器和一些功能强大的软件(如IE5和Office 2000),那么就有能力利用Office Web组件提供一个交互式图形开发环境。这种模式下,客户端工作站将在整个任务中分担很大的比重。

 

<%Option Explicit
Class ExcelGen
Private objSpreadsheet
Private iColOffset

Private iRowOffset
Sub Class_Initialize()
Set objSpreadsheet = Server.CreateObject("OWC.Spreadsheet")
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 = ""
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

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/asp/)

Dim objRS
Set objRS = Server.CreateObject("ADODB.Recordset")
objRS.Open "SELECT * FROM xxxx", "Provider=SQLOLEDB.1;Persist Security

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/asp/)

Info=True;User ID=xxxx;Password=xxxx;Initial Catalog=xxxx;Data source=xxxx;"
Dim SaveName
SaveName = Request.Cookies("savename")("name")
Dim objExcel
Dim ExcelPath
ExcelPath = "Excel" & SaveName & ".xls"
Set objExcel = New ExcelGen
objExcel.RowOffset = 1
objExcel.ColumnOffset = 1
objExcel.GenerateWorksheet(objRS)
If objExcel.SaveWorksheet(Server.MapPath(ExcelPath)) then
'Response.Write "<html><body bgcolor='gainsboro' text='#000000'>已保存为Excel文件.

<a href='" & server.URLEncode(ExcelPath) & "'>下载</a>"
Else
Response.Write "在保存过程中有错误!"
End If
Set objExcel = Nothing
objRS.Close
Set objRS = Nothing
%> 

 

  二、用Excel的Application组件在客户端导出到Excel或Word

  注意:两个函数中的“data“是网页中要导出的table的 id

<input type="hidden" name="out_word" onclick="vbscript:buildDoc" value="导出到word" class="notPrint">
<input type="hidden" name="out_excel" onclick="AutomateExcel();" value="导出到excel" class="notPrint"> 

  导出到Excel代码

<SCRIPT LANGUAGE="javascript">
<!--
function AutomateExcel()
{
// Start Excel and get Application object.
var oXL = new ActiveXObject("Excel.Application");
// Get a new workbook.
var oWB = oXL.Workbooks.Add();
var oSheet

来源:https://www.tulaoshi.com/n/20160129/1502848.html

延伸阅读
标签: 分娩
在 孕期 的准妈妈快要到临产期了,这时就会有很多忧虑,例如,万一 难产 怎么办呢?其实难产是可以避免的哦。 一、难产 难产是指母亲的生产过程进展异常缓慢,难产对母亲及胎儿的罹病率及死亡率均提高。孕妇难产泛指在分娩过程中出现某些情况,导致婴儿本身产生问题,或因母亲骨盘腔狭窄、子宫或阴道结构异常、子宫收缩无力或...
标签: 电脑入门
第一、双击任一选中的功能区选项卡,如当前视图选项卡已被选择,直接双击该选项卡即可隐藏功能区。再次双击该功能区选项卡将取消隐藏。 第二、按快捷键Ctrl+F1直接隐藏功能区。再次按Ctrl+F1取消隐藏。 第三、在Excel 2010中可以直接单击功能区右上方的功能区最小化按钮直接隐藏功能区。再次单击该按钮取消隐藏。 第四、在功能区任意位置右...
打造美睫新娘四种方法 编者按:都说眼睛是心灵的窗户,那假睫毛的使用又是眼部化妆中最重要的,可见假睫毛对眼睛起到的作用。本期我们为新娘介绍了打造美睫新娘的方法与四种假睫毛的贴法,并对应了相应的眼形,看看哪种是最适合你的,做个闪亮电眼新娘! 打造美睫新娘之一: 自然型美睫 适合自然弧度的杏仁眼,用自然色系的眼...
腱鞘囊肿的治疗方法 四种方法治疗腱鞘囊肿 腱鞘囊肿在我们生活中是比较常见的一种关节疾病情况了,很多人对此都是显得很担心,那么大家知道腱鞘囊肿的治疗方法是什么吗,腱鞘囊肿怎么治疗比较好呢,下面就让我们一起来了解一下吧。 腱鞘囊肿的治疗方法 如果一个人有肌腱鞘囊肿,那么人的生活将发生巨大的变化...
淡化疤痕 四种方法让疤痕去无踪 疤痕是人在受到创伤之后所引起的,它是人体在修复床上的过程中必然的产物。而疤痕虽然不起眼,但是如果疤痕生长超过一定的程度就会引起许多的并发症,会给患者带来极大的痛苦。那么你知道怎样才能淡化疤痕呢,生活中有哪些方法能淡化疤痕呢,怎样才能预防疤痕呢,下面我们就一起来看看吧。 ...

经验教程

426

收藏

68
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部