问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

asp导出excel文件大家有什么简便点的操作方法

发布网友 发布时间:2022-04-20 21:16

我来回答

1个回答

热心网友 时间:2023-09-14 13:34

   一 使用OWC

  什么是OWC?

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

<%Option Explicit Class ExcelGen Private objSpreadsheet Private iColOffset

Private iRowOffset Sub Class_Initialize() Set objSpreadsheet = Server CreateObject( OWC Spreadsheet ) iRowOffset = iColOffset = End Sub

Sub Class_Terminate() Set objSpreadsheet = Nothing Clean up End Sub

Public Property Let ColumnOffset(iColOff) If iColOff > then iColOffset = iColOff Else iColOffset = End If End Property

Public Property Let RowOffset(iRowOff) If iRowOff > then iRowOffset = iRowOff Else iRowOffset = 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 = objSpreadsheet Cells(iRow iCol) Halignment = 居中 iCol = iCol + Next objField Display all of the data Do While Not objRS EOF iRow = iRow + 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 = End If iCol = iCol + 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 ) SaveWorksheet = (Err Number = ) End Function End Class

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

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 = objExcel ColumnOffset = objExcel GenerateWorksheet(objRS) If objExcel SaveWorksheet(Server MapPath(ExcelPath)) then Response Write <><body bgcolor= gain *** oro text= # >已保存为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 = oWB ActiveSheet; var table = document all data; var hang = table rows length;

var lie = table rows( ) cells length;

// Add table headers going cell by cell for (i= ;i<hang;i++) { for (j= ;j<lie;j++) { oSheet Cells(i+ j+ ) value = table rows(i) cells(j) innerText; }

} oXL Visible = true; oXL UserControl = true; } // > </SCRIPT> 

  导出到Word代码

<script language= vbscript > Sub buildDoc set table = document all data row = table rows length column = table rows( ) cells length

Set objWordDoc = CreateObject( Word Document )

objWordDoc Application Documents Add theTemplate False objWordDoc Application Visible=True

Dim theArray( ) for i= to row for j= to column theArray(j+ i+ ) = table rows(i) cells(j) innerTEXT next next objWordDoc Application ActiveDocument Paragraphs Add Range InsertBefore( 综合查询结果集 ) //显示表格标题

objWordDoc Application ActiveDocument Paragraphs Add Range InsertBefore( ) Set rngPara = objWordDoc Application ActiveDocument Paragraphs( ) Range With rngPara Bold = True //将标题设为粗体 ParagraphFormat Alignment = //将标题居中 Font Name = 隶书 //设定标题字体 Font Size = //设定标题字体大小 End With Set rngCurrent = objWordDoc Application ActiveDocument Paragraphs( ) Range Set tabCurrent = ObjWordDoc Application ActiveDocument Tables Add(rngCurrent row column)

for i = to column

objWordDoc Application ActiveDocument Tables( ) Rows( ) Cells(i) Range InsertAfter theArray(i ) objWordDoc Application ActiveDocument Tables( ) Rows( ) Cells(i) Range ParagraphFormat alignment= next For i = to column For j = to row objWordDoc Application ActiveDocument Tables( ) Rows(j) Cells(i) Range InsertAfter theArray(i j) objWordDoc Application ActiveDocument Tables( ) Rows(j) Cells(i) Range ParagraphFormat alignment= Next Next

End Sub </SCRIPT> 

  三 直接在IE中打开 再存为EXCEL文件

  把读出的数据用<table>格式 在网页中显示出来 同时 加上下一句即可把EXCEL表在客客户端显示

<%response ContentType = application/vnd ms excel %> 

  注意 显示的页面中 只把<table>输出 最好不要输出其他表格以外的信息

  四 导出以半角逗号隔开的csv

  用fso方法生成文本文件的方法 生成一个扩展名为csv文件 此文件 一行即为数据表的一行 生成数据表字段用半角逗号隔开 (有关fso生成文本文件的方法 在此就不做介绍了)

  CSV文件介绍 (逗号分隔文件)

  选择该项系统将创建一个可供下载的CSV 文件 CSV是最通用的一种文件格式 它可以非常容易地被导入各种PC表格及数据库中

  请注意即使选择表格作为输出格式 仍然可以将结果下载CSV文件 在表格输出屏幕的底部 显示有 CSV 文件 选项 点击它即可下载该文件

lishixin/Article/program/net/201311/15808
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
土地入股的定义 ups快递客服电话24小时 贷款记录在征信保留几年? 安徽徽商城有限公司公司简介 安徽省徽商集团新能源股份有限公司基本情况 安徽省徽商集团有限公司经营理念 2019哈尔滨煤气费怎么有税? 快手删除的作品如何恢复 体育理念体育理念 有关体育的格言和理念 ASP页面中怎么导出Excel文档 asp导入excel时遇到的问题 asp 导出excel 文件名,表名设置问题 代码如下: 在线请教:ASP网页上查询的数据如何输出到EXECL中? asp 输出excel,数据一列一列增加,如何在最终列(... 想把ASP表单提交的页面转化到EXCEL然后输出打印,... C# asp.net button直接打印目录下的excel时居然从... 求ASP操作excel数据库 功能实现查看,修改,统计,... 如何将asp查询结果输出为excel表格 asp.net中 生成一个EXCEL文件,怎么样可以保存在客... asp.net怎么将表格中内容打印 如何用asp将数据库中的数据导出并生成在excel或wor... ASP打印输出EXCEL格式 Asp页面怎么调出打印Excel表格 被封多长时间可以解封? 东方心绮楼怎么汉化 月下绮谭汉化版 游戏 西汉马王堆一号墓出土的绮丝织品分别有什么? 四川省达州市汉宣县绮云南路聚城峰华的邮政编码是什么 上海汉绮网络科技有限公司怎么样? asp生成EXCEL的问题 asp 页面显示问题, 我写了个导出到excel文件 需要... asp查询结果保存为excel文件 asp导出excel问题? 看望肝癌病人要送什么? 肝癌病人开刀后送什么好 看望肝癌病人带什么礼品好 去看肝癌患者送什么东西好呀. 看望肝癌病人应该带什么营养品? 看望肝癌中晚期的病人,带什么礼物? 刚做完肝癌手术的病人吃什么营养品好? 看刚手术过的病人,送什么礼物好? 同学父亲肝癌晚期,痛苦不堪,想去看望他,带点啥... 看望手术病人送什么好? 送礼看病人各送什么水果好呢 肝癌晚期做完手术后能吃什么 哥哥已经术后三天了,是肝癌,现在可以吃东西了,... 肝癌切除术手术,应该吃点什么? 肝癌病人术后应该吃什么食物 肝癌手术后吃什么好?