zoukankan      html  css  js  c++  java
  • ASP将ACCESS表中的数据记录导入到EXCEL文件中

    首先,我是用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")),就可以避免数据错位了。
    以上是我成功测试过的一个方法,如果还有更好的方法,欢迎留言讨论。
  • 相关阅读:
    2019-1-25-win10-uwp-禁用-ScrollViewer-交互
    2019-1-25-win10-uwp-禁用-ScrollViewer-交互
    2018-8-13-WPF-使用-Edge-浏览器
    2018-8-13-WPF-使用-Edge-浏览器
    2018-10-23-使用-Pandoc-把-Markdown-转-Docx
    2018-10-23-使用-Pandoc-把-Markdown-转-Docx
    Java实现 LeetCode 486 预测赢家
    PDO::getAttribute
    PDO::beginTransaction
    PDO::exec
  • 原文地址:https://www.cnblogs.com/zlmlovem/p/1932962.html
Copyright © 2011-2022 走看看