Asp 导出Excel

<%
Dim xlWorkSheet
Dim xlApplication
Set xlApplication = Server.CreateObject("Excel.Application")
xlApplication.Visible = False
xlApplication.Workbooks.Add
Set xlWorksheet = xlApplication.Worksheets(1)
set oRS=Server.CreateObject("ADODB.Recordset")
if Request("ImportExcel")="ImportExcel" then
  'If Response.IsClientConnected Then 
'  Response.Flush 
'  Else 
'  Response.End
'  End If
  Response.Expires = 0
  Response.Expiresabsolute = Now() - 1
  Response.AddHeader "Content-type","application/octet-stream"
  Response.AddHeader "Accept-Ranges","bytes"
  Response.AddHeader "Content-Disposition","attachment; filename=kl178exp.xls"
  'Response.ContentType = "application/msexcel"
  sql =session("SQL")  
  oRS.open sql,conns,1,3,1
  xlWorksheet.Cells(1,1).Value = "用户名"
  xlWorksheet.Cells(1,2).Value = "真实姓名"
  xlWorksheet.Cells(1,3).Value = "用户类型"
  xlWorksheet.Cells(1,4).Value = "注册时间"
  xlWorksheet.Cells(1,5).Value = "首次登录时间"
  xlWorksheet.Cells(1,6).Value = "最后登录时间"
  xlWorksheet.Cells(1,7).Value = "使用频率"
  xlWorksheet.Cells(1,8).Value = "停留时间"
  xlWorksheet.Cells(1,9).Value = "券商名称"
  xlWorksheet.Cells(1,10).Value = "业务员"
  xlWorksheet.Cells(1,1).Interior.ColorIndex = 16
  xlWorksheet.Cells(1,2).Interior.ColorIndex = 16
  xlWorksheet.Cells(1,3).Interior.ColorIndex = 16
  xlWorksheet.Cells(1,4).Interior.ColorIndex = 16
  xlWorksheet.Cells(1,5).Interior.ColorIndex = 16
  xlWorksheet.Cells(1,6).Interior.ColorIndex = 16
  xlWorksheet.Cells(1,7).Interior.ColorIndex = 16
  xlWorksheet.Cells(1,8).Interior.ColorIndex = 16
  xlWorksheet.Cells(1,9).Interior.ColorIndex = 16
  xlWorksheet.Cells(1,10).Interior.ColorIndex=16
  xlWorksheet.Cells(1,4).ColumnWidth=20
  xlWorksheet.Cells(1,5).ColumnWidth=20
  xlWorksheet.Cells(1,6).ColumnWidth=20
  
  iRow = 2
  If Not oRS.EOF Then
   Do Until oRS.EOF
  xlWorksheet.Cells(iRow,1).Value = oRS("UserName")
  xlWorksheet.Cells(iRow,2).Value = oRS("realName")
  xlWorksheet.Cells(iRow,3).Value = GetUserType(oRS("Usertype"))
  xlWorksheet.Cells(iRow,4).Value = FormatDate(oRS("RegisterTime"))
  xlWorksheet.Cells(iRow,5).Value = FormatDate(oRS("FirstLoginTime"))
  xlWorksheet.Cells(iRow,6).Value = FormatDate(oRS("LastLoginTime"))
  xlWorksheet.Cells(iRow,7).Value = oRS("UsedGroup")
  xlWorksheet.Cells(iRow,8).Value = oRS("UsedTime")
  xlWorksheet.Cells(iRow,9).Value = GetCompanyNameByID(oRS("CompanyID"))
  xlWorksheet.Cells(iRow,10).Value =oRS("introducer")
  iRow = iRow + 1
  oRS.MoveNext
  Loop
  End If
   rannum=int(1000*rnd)
   YoureIp=trim(Request.ServerVariables("REMOTE_ADDR"))
   YoureIp=left(YoureIp,len(YoureIp)-4)
   YoureIp=replace(YoureIp,".","")
  rndfile=year(now)&month(now)&day(now)&hour(now)&minute(now)&second(now)&rannum&YoureIp
  strFile = rndfile
  xlWorksheet.SaveAs Server.MapPath(strFile & ".xls")
  xlApplication.Quit
  'Close the Workbook
  Set xlWorksheet = Nothing
  Set xlApplication = Nothing
  response.Redirect(strFile & ".xls")
end if

%>

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 要使用ASP导出Excel代​​码,您可以按照以下步骤进行操作: 1. 首先,请确保您的服务器上已安装Microsoft Excel或者Office套件。 2. 然后,在ASP代码中创建一个Excel对象,如下所示: ``` Set objExcel = Server.CreateObject("Excel.Application") ``` 3. 接下来,打开一个Excel工作簿并选择一个工作表,如下所示: ``` objExcel.Workbooks.Add Set objSheet = objExcel.ActiveWorkbook.Worksheets(1) ``` 4. 然后,设置工作表中的数据,如下所示: ``` objSheet.Cells(1, 1).Value = "姓名" objSheet.Cells(1, 2).Value = "年龄" objSheet.Cells(2, 1).Value = "张三" objSheet.Cells(2, 2).Value = "25" objSheet.Cells(3, 1).Value = "李四" objSheet.Cells(3, 2).Value = "30" ``` 5. 最后,将工作簿保存到指定的位置,并关闭Excel对象,如下所示: ``` objExcel.ActiveWorkbook.SaveAs("C:\example\example.xlsx") objExcel.Quit ``` 完整的ASP导出Excel代​​码如下所示: ``` <% Set objExcel = Server.CreateObject("Excel.Application") objExcel.Workbooks.Add Set objSheet = objExcel.ActiveWorkbook.Worksheets(1) objSheet.Cells(1, 1).Value = "姓名" objSheet.Cells(1, 2).Value = "年龄" objSheet.Cells(2, 1).Value = "张三" objSheet.Cells(2, 2).Value = "25" objSheet.Cells(3, 1).Value = "李四" objSheet.Cells(3, 2).Value = "30" objExcel.ActiveWorkbook.SaveAs("C:\example\example.xlsx") objExcel.Quit %> ``` 请注意,在使用ASP导出Excel时,需要注意Excel对象的安全性,以避免潜在的安全风险。 ### 回答2: ASP导出Excel的代码可以通过以下步骤实现: 1. 创建一个新的ASP页面。 2. 在页面的开头,设置响应头,指定导出Excel的格式和文件名: ``` <% Response.ContentType = "application/vnd.ms-excel" Response.AddHeader "Content-Disposition", "attachment;filename=excel文件名.xls" %> ``` 3. 创建一个数据库连接字符串,连接到数据库并执行SQL查询,将查询结果保存到Recordset对象中: ``` <% Dim conn, rs, strSQL Set conn = Server.CreateObject("ADODB.Connection") conn.Open "数据库连接字符串" strSQL = "SQL查询语句" Set rs = conn.Execute(strSQL) %> ``` 4. 设置Excel文件的表头,通过Response对象将表头写入到输出流中: ``` <% Response.Write "表头1" &vbTab & "表头2" & vbTab & "表头3" & vbNewLine %> ``` 5. 遍历Recordset对象,将每行数据写入到输出流中: ``` <% Do Until rs.EOF Response.Write rs("列1") &vbTab & rs("列2") & vbTab & rs("列3") & vbNewLine rs.MoveNext Loop %> ``` 6. 关闭数据库连接和Recordset对象: ``` <% rs.Close Set rs = Nothing conn.Close Set conn = Nothing %> ``` 7. 结束ASP页面的执行: ``` <% Response.End %> ``` 以上就是使用ASP导出Excel的简单示例代码。请注意替换代码中的数据库连接字符串、SQL查询语句以及表头和列名,并根据需要进行调整和优化。 ### 回答3: ASP导出Excel是通过使用ASP代码将数据导出Excel文件。下面是一个简单的示例代码,用于演示如何导出Excel文件。 首先,我们需要在ASP页面中创建一个数据表格,并填充要导出的数据。然后,通过使用Response对象,设置响应头来指定将要导出的文件类型为Excel,并为文件命名。接下来,将表格中的数据逐行写入输出流。最后,通过Response.End()方法结束响应流,以完成导出操作。 下面是一个示例代码: <% '创建数据表格 Dim datatable Set datatable = Server.CreateObject("ADODB.Recordset") datatable.Fields.Append "Name", 200, True datatable.Fields.Append "Age", 3, True datatable.Open '添加数据行 datatable.AddNew datatable.Fields("Name").Value = "John" datatable.Fields("Age").Value = 25 datatable.Update datatable.AddNew datatable.Fields("Name").Value = "Emily" datatable.Fields("Age").Value = 30 datatable.Update '设置响应头导出Excel文件 Response.ClearContent Response.ContentType = "application/vnd.ms-excel" Response.Charset = "UTF-8" Response.AddHeader "Content-Disposition", "attachment; filename=exported_data.xls" '写入数据行 For i = 0 To datatable.Fields.Count - 1 Response.Write datatable.Fields(i).Name & vbTab Next Response.Write vbCrLf Do Until datatable.EOF For i = 0 To datatable.Fields.Count - 1 Response.Write datatable.Fields(i).Value & vbTab Next Response.Write vbCrLf datatable.MoveNext Loop '结束响应流 datatable.Close Response.End %> 以上代码将创建一个包含两列数据(Name和Age)的简单数据表格,并将其导出为名为"exported_data.xls"的Excel文件。我们首先设置了导出文件的类型和文件名,然后将表格中的数据逐行写入输出流。最后,我们通过调用Response.End()方法结束响应流。 可以根据实际需求修改表格的结构和添加更多数据。此外,还可以使用更复杂的查询和数据操作来生成要导出Excel的数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值