求助一下,老系统,古老的asp导出excel,伸手求个代码

  • o
    opensesame
    现在还只能后台导出,本来想用前端jquery导出,但是有上万行,现在的代码只能后台导出csv,可是大领导看报表的时候说csv的文件,打开后样式不好看,最好能像金蝶导出的那样设置一些列宽行高,边框线之类,最起码要能自定义列宽的
    我觉得也是,几十列数据,数字都超过了默认的列宽,每次看的时候都要自己修改宽度太麻烦

    昨天想用aspx实现,但是要改服务器配置,又没权限,Google了半天下来,实在找不到好用的asp导出excel的方法,所以特来强大的地板求助一下。
  • p
    paopaomj
    直接数据库导出不好么
  • o
    opensesame
    用户不可能直接操作数据库,只能在前端页面上点一下按钮下载到自己电脑里
  • o
    opensesame
    谢谢,没想到还有这样的扩展
    自己用了一下,简直完美

    不过领导最终还是希望能像金蝶那样直接导出可用的excel


    以前我用aspx开发的系统,记得就自带这种的组件吧,asp太古老了
  • z
    zzzzz
    貌似把HTML的表格格式的文本后缀名改成xls是可以用excel打开的,格式也对,就是无比巨大。
  • o
    opensesame
    这个也试过了,能打开,就是打开有兼容性提示
  • a
    antonychan
    后台导出放在磁盘上返回前端一个网址自动下载。。
  • l
    liuzhedash
    http://www.crydust.be/blog/2009/ ... les-in-asp-classic/
    可以参考一下这个。
    Excel开csv还是比较简单的,也可以和领导说说怎么操作。
  • P
    Pyrrhus
    你去搜一下Aspose.Cells for .NET
  • o
    opensesame
    谢谢,大概看了一下,好像也是通过html,回头我再试试,如果这种方式能成功最好了,html应该也能支持样式了,领导不满意csv主要还是希望能有个边框,以及适合的列宽,头都大了
  • p
    paopaomj
    没有数据库权限别费那功夫了,不然直接在power query里把数据库作为数据源想怎么样都行,不产生效益的事情别老惯着领导了,或者你抓个包看看数据库地址用户名密码是啥,老asp系统应该很好搞定
  • 四脚龙
    .NET 的是NPOI
    https://github.com/nissl-lab/npoi
    随便写写就能输出正经的EXCEL

    不过是aspx,ASP是不是用不了……
  • l
    lyxlyx
    asp直接导出excel,我10几年前写过,明天回到公司看一下代码。
  • s
    supremekai
    Excel或者说Office文件格式有两种,一种是二进制的封闭格式,一种是XML标准的开放格式,ASP可以用拼接字符串的形式生成XML文件,原理和导出CSV是差不多的,就是麻烦一点点,要严格按照Microsoft Office Open XML标准来,不需要任何第三方工具
  • o
    opensesame
    谢谢,等你消息
  • o
    opensesame
    有详细文档吗,我搜搜看
  • s
    supremekai
    百度 ISO/IEC 29500-1:2008 标准
  • o
    opensesame
    试着生成了一个xls后缀的xml文件,可以打开使用,但是也有这样的提示
  • o
    opensesame
    哥们今天找到代码了吗
  • 木马大叔
    可以试试楼上说的aspose,还堪用。 iOS fly ~
  • l
    lyxlyx
    找到了,你留个邮箱,我发给你
  • o
    opensesame
    哥们代码用上了,可以非常方便的生成文件,而且可以用css定义样式,内容上已经完美了。现在只有最后一点遗憾了,就是也有19L那样的提示,不知道有什么办法可以去掉

    因为生成的文件主要还是要给经销商查看的,有些经销商比较啰嗦,看到这样的提示,担心会包含病毒,解释不清
    噢对了,另外,tou.txt和di.txt里面,是不是表头和脚部两个table的html代码?
  • l
    lyxlyx
    那两个是头部和底部文件,下午我看看还有没有这两个文件。
  • l
    lyxlyx
    发邮件给你了