惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

有赞技术团队
有赞技术团队
小众软件
小众软件
The Cloudflare Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园_首页
酷 壳 – CoolShell
酷 壳 – CoolShell
爱范儿
爱范儿
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
雷峰网
雷峰网
Jina AI
Jina AI
博客园 - 【当耐特】
V
Visual Studio Blog
美团技术团队
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
罗磊的独立博客
大猫的无限游戏
大猫的无限游戏
量子位
IT之家
IT之家
G
Google Developers Blog
V
V2EX
The GitHub Blog
The GitHub Blog
月光博客
月光博客
GbyAI
GbyAI

博客园 - 明仔¥

TP6 实现上传文件 页面自适应纯CSS,使用rem单位 jQuery解决高度统一问题 dedecms Ajax异步获取文章列表 手机端页面自适应解决方案—rem布局 mysql中bigint、int、mediumint、smallint 和 tinyint的取值范围 修改PHP 上传文件大小限制 WampServer下修改和重置MySQL密码 CSS文件添加 @charset "utf-8"; 可能会引起样式在IE6下失效 Windows Server 2003下MySQL 5.1.32安装图文 如何彻底卸载MySQL 最好用的mysql密码忘记的解决方法 clng与cint的区别及防溢出函数 - 明仔¥ - 博客园 几个比较好看的Button的CSS - 明仔¥ - 博客园 网站样式切换效果 - 明仔¥ - 博客园 asp生成excel报表 VB中如何将字符串转换成数值来运算? utf-8编码用于asp 出现乱码的问题--从数据库调用的是乱码--gb2312转换utf-8 - 明仔¥ - 博客园 关于js中window.location.href,location.href,parent.location.href,top.location.href的用法 - 明仔¥ - 博客园
ASP将ACCESS表中的数据记录导入到EXCEL文件中 - 明仔¥ - 博客园
明仔¥ · 2011-01-11 · via 博客园 - 明仔¥

首先,我是用SQL语句把数据从ACCESS表中读出,再把数据逐行写入excel表中。
第一步:读数据出来
set rs=server.CreateObject("adodb.recordset")
rs.open "select * from user ",conn,1,1

第二步:写入数据到excel文件中
if not (rs.eof And rs.bof) then 
  dim ttxt,file,filepath,writefile
  ttxt="user.csv"  '为要写入的文件取个文件名,后缀可以是txt,xls,这里我用csv,这种文件打开也是excel表
  Set file = CreateObject("Scripting.FileSystemObject")
  Application.lock
  '写入文件的存放路径,一定要开放这个路径下的读写权限
  filepath=Server.MapPath(ttxt)
  Set Writefile = file.CreateTextFile(filepath,true)
  '在表格中写入第一行,字段描述,这个根据你实际的数据表字段来写
  Writefile.WriteLine "姓名,职位,E-mail,单位名称,联系地址,提交时间" 
  do while not rs.eof
  Writefile.WriteLine rs("姓名")&","&rs("职位")&","&rs("E-mail")&","&rs("单位名称")&","&rs("联系地址")&","&rs("提交时间")
  rs.movenext
  loop
  '以上三行作用是逐行将数据写入表中
  Writefile.close
  Application.unlock
  rs.close
  set rs=nothing
end if
'完成写入

就这两步就可以实现将ACCESS表中的数据导入到EXCEL文件中了,完成以后打开刚才的user.csv文件,里面是不是有数据了?
这里还要提一个注意事项,写入数据的时候,excel默认是以“,”为分隔符,一遇到“,”,它就会自动将数据写到下一个字段项,因此,如果你的数据中出现了半角的逗号(例如:联系方式里面有逗号),那么逗号后面的内容将会写到下一格,这样依此往后推,那么写入的数据就会错位,一片混乱。如果你将留言版的内容写入,就会碰到这样的问题,解决的办法就是用替换函数。
function HTMLEncode(fString)
if not isnull(fString) then
    fString = Replace(fString,",", ",")
    fString = Replace(fString,chr(10), ",")
    fString = Replace(fString,chr(13), " ")
    fString = Replace(fString,"<br>", ",")
    fString = Replace(fString," ", " ")
    HTMLEncode= fString
end if
end function
将这个HTMLEncode(fString)用进去,将rs("联系地址")改成 HTMLEncode(rs("联系地址")),以及所有可能会出现“,”的字段改成HTMLEncode(rs("xxx")),就可以避免数据错位了。
以上是我成功测试过的一个方法,如果还有更好的方法,欢迎留言讨论。