ac_cheng 发表于 2008-6-30 13:07

应该是输出格式的问题吧?

在ASP文件中,加入:
<%
response.AddHeader "Content-disposition", "inline; filename=员工工资表.xls"
Response.ContentType = "application/vnd.ms-excel"
%>
可生成EXCEL格式数据, 但打开此EXCEL文件后,里面有一列"银行卡号",里面的卡号9559981990588093410 变成了 9.55998E+18
,如何解决这样的问题,使银行卡号正常显示?

若:"银行卡号"列的值为 <%=rs("BankCard")%> ,该怎么写?

zhangyao3287 发表于 2008-6-30 13:11

字段类型的问题吧

ac_cheng 发表于 2008-6-30 14:08

字段类型是varchar, 输出时候再CSTR都不行. EXCEL本身会对长度在十几位以上的一串数字用科学计数法表示

但我见过别人可以做到的, 从ASP网站里导出EXCEL报表,导出来就可以.如图:
http://www.interchina-industry.com/helpme.jpg

[[it] 本帖最后由 ac_cheng 于 2008-6-30 14:10 编辑 [/it]]

makebest 发表于 2008-6-30 16:09

如果是直接在EXCEL输入的话, 也是这样的结果, 比较快的解决办法是在卡号前加一个单引号: '
比较好的办法当然是找到把单元格设成文本的样式了.
<td style='mso-number-format:"\@"' >9559981990588093410</td>

ac_cheng 发表于 2008-7-1 00:34

之前我也是加单引号的,不过现在业务需要,已经满足不了啦,按照你的提示设置了样式之后就可以解决了.谢了.

ac_cheng 发表于 2008-7-6 16:30

又有一个新的问题出现了

http://www.interchina-industry.com/123.gif

打开上面链接,如图: E \ F \ G 列  和  7\8\9\10\11 行 的单元格的边框没了.
因为我的数据就4列,
有没有办法让用ASP导出的EXCEL文件 和 手工在EXCEL录入的格式一模一样?

页: [1]

编程论坛