博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ASP导出数据到excel遇到的一些问题
阅读量:5138 次
发布时间:2019-06-13

本文共 3685 字,大约阅读时间需要 12 分钟。

一直用动易平台的ASP做新闻发布网站,直到现在才接触导出数据到Excel的问题,目的在于公司要统计各部门的投稿量,要做这么个东西,实现起来是挺简单的,但是第一次做,还是费了一些功夫的,特此记录一下

主要代码如下:

写查询字符串

rsAll为查询字符串

rsAll.open sqlAll,conn,1,3

Set xlApplication =server.CreateObject( "Excel.Application") '调用excel对象

xlApplication.Visible = false '无需打开excel
Set xlWorkBook=xlApplication.Workbooks.Add '添加工作簿
j=1

//定义一些表格样式

xlWorkBook.Worksheets(1).Columns(1).ColumnWidth=30
xlWorkBook.Worksheets(1).Columns(1).HorizontalAlignment=3
xlWorkBook.Worksheets(1).Columns(2).ColumnWidth=30
xlWorkBook.Worksheets(1).Columns(2).HorizontalAlignment=3
xlWorkBook.Worksheets(1).Columns(3).ColumnWidth=30
xlWorkBook.Worksheets(1).Columns(3).HorizontalAlignment=3

xlWorkBook.Worksheets(1).Range( "A2 ").font.bold=true '粗体

xlWorkBook.Worksheets(1).Range( "B2 ").font.bold=true '粗体
xlWorkBook.Worksheets(1).Range( "C2 ").font.bold=true '粗体
xlWorkBook.Worksheets(1).Range( "A1 ").HorizontalAlignment=3 '水平对齐
xlWorkBook.Worksheets(1).Range( "A1 ").VerticalAlignment=3 '垂直对齐

//写excel表头了

 

xlWorkBook.Worksheets(1).Cells(1,1).Value = "集团新闻中心各记者站积分统计"

xlWorkBook.Worksheets(1).Cells(2,1).Value = "记者站名称"
xlWorkBook.Worksheets(1).Cells(2,2).Value = "要闻文章数量"
xlWorkBook.Worksheets(1).Cells(2,3).Value = "要闻文章积分"
xlWorkBook.Worksheets(1).Cells(2,4).Value = "综合新闻文章数量"
xlWorkBook.Worksheets(1).Cells(2,5).Value = "综合新闻文章积分"
xlWorkBook.Worksheets(1).Cells(2,6).Value = "其它栏目文章数量"
xlWorkBook.Worksheets(1).Cells(2,7).Value = "其它栏目文章数量"
xlWorkBook.Worksheets(1).Cells(2,8).Value = "微信公众号数量"
xlWorkBook.Worksheets(1).Cells(2,9).Value = "微信公众号积分"
xlWorkBook.Worksheets(1).Cells(2,10).Value = "报刊杂志数量"
xlWorkBook.Worksheets(1).Cells(2,11).Value = "报刊杂志积分"
xlWorkBook.Worksheets(1).Cells(2,12).Value = "网络电视台数量"
xlWorkBook.Worksheets(1).Cells(2,13).Value = "网络电视台积分"
xlWorkBook.Worksheets(1).Cells(2,14).Value = "比赛获奖数量"
xlWorkBook.Worksheets(1).Cells(2,15).Value = "比赛获奖积分"

//循环输出下面的数据

DO WHILE NOT rsAll.EOF

xlWorkBook.Worksheets(1).Cells(2+j,1).Value = rsAll("CopyFrom")
xlWorkBook.Worksheets(1).Cells(2+j,2).Value = rsAll("YWNo")
xlWorkBook.Worksheets(1).Cells(2+j,3).Value = rsAll("YWFS")
xlWorkBook.Worksheets(1).Cells(2+j,4).Value = rsAll("ZHNo")
xlWorkBook.Worksheets(1).Cells(2+j,5).Value = rsAll("ZHFS")
xlWorkBook.Worksheets(1).Cells(2+j,6).Value = rsAll("QTNo")
xlWorkBook.Worksheets(1).Cells(2+j,7).Value = rsAll("QTFS")
xlWorkBook.Worksheets(1).Cells(2+j,8).Value = rsAll("weixinno")
xlWorkBook.Worksheets(1).Cells(2+j,9).Value = rsAll("weixinfs")
xlWorkBook.Worksheets(1).Cells(2+j,10).Value = rsAll("baozishu")
xlWorkBook.Worksheets(1).Cells(2+j,11).Value = rsAll("baozifenshu")
xlWorkBook.Worksheets(1).Cells(2+j,12).Value = rsAll("shipinshu")
xlWorkBook.Worksheets(1).Cells(2+j,13).Value = rsAll("shipinfs")
xlWorkBook.Worksheets(1).Cells(2+j,14).Value = rsAll("zuopinshu")
xlWorkBook.Worksheets(1).Cells(2+j,15).Value = rsAll("zuopinfenshu")

j=j+1
rsALL.movenext
LOOP
xlWorkBook.SaveAs tfile       //保存文件

Set xlWorksheet = Nothing    //释放工作表

xlApplication.Quit                  //释放对象
//生成链接,供用户下载
response.write("<center><table width='700' align='center'><tr><td>导出成功!点击下载:<a href='jftj.xlsx'>jftj.xlsx</a></td></tr></table></center>")
response.Write("<script><alert>Excel导出成功,请到列表下方点击下载!</alert></script>")
END IF

 

程序写完了,那么要从服务器上运行,还需要给服务器安装word组件,安装word的过程不再赘述,安装上word还要给IIS赋予使用word组件中excel组件的使用权限,方法是win+R,运行框里输入dcomcnfg,然后选择“组件服务”--》计算机--》我的电脑--》DCOM配置,找到Microsoft Excel Application,然后右键--》属性--》安全--》启动和激活权限--》自定义,然后选择编辑,然后添加Everyone,然后给everyone赋予权限,然后选择“标识”选项卡,改成交互式用户。

 

上述安装配置excel组件的原因是,1、如果不配置“启动和激活”权限,在server.CreateObject( "Excel.Application")时,服务器会报错,没有权限。2、如果不配置标识这个玩意儿,在执行“Set xlWorkBook=xlApplication.Workbooks.Add '添加工作簿 ”时,会报内存不足请关闭相关进行之类的错误。

本次记录完毕。

 

转载于:https://www.cnblogs.com/liujiekun/p/7808610.html

你可能感兴趣的文章
kubernetes_book
查看>>
Redis 常用数据结构命令
查看>>
软件工程课堂作业
查看>>
OpenFire 的安装和配置
查看>>
web.config详解
查看>>
ZJOI2018游记Round1
查看>>
侧边栏广告和回到顶部
查看>>
https://blog.csdn.net/u012106306/article/details/80760744
查看>>
【转】从头到尾彻底理解KMP
查看>>
ios应用版本号设置规则
查看>>
海上孤独的帆
查看>>
error: more than one device and emulator 问题解决
查看>>
Java基础:容器
查看>>
YUV摘要格式
查看>>
【方法2】删除Map中Value反复的记录,而且仅仅保留Key最小的那条记录
查看>>
C# CheckedListBox控件的使用方法
查看>>
【HDOJ】2007平方和与立方和
查看>>
js中const,var,let区别
查看>>
NFS和DHCP
查看>>
版本号的比较
查看>>