救命啊,怎么实现啊,导出EXCEL的问题

lyx7796 2006-05-09 02:29:55
我的数据导出是这样实现的,现在的问题是比如银行帐号这项在导出以后就显示成科学记数法了,请问我该怎样才能格式化他成文本那
单引号我试了,写进去就变成 '691000000012563这样的了,打印的时候单引号也出来了,显示都显示出来了
请问除了这个单引号的方法还有别的吗?
分不够再加~~~~,谢谢了
Public Function ExportDataSetToExcel(ByVal ds As DataSet, ByVal filename As String) As Boolean
Dim i, j, CountR, CountC As Integer
CountR = ds.Tables(0).Rows.Count
CountC = ds.Tables(0).Columns.Count
Response.Clear()
Response.Charset = "GB2312"
Response.Buffer = True
Response.AppendHeader("Content-Disposition", "attachment;filename=" & filename.ToString & ".xls")
Response.ContentType = "application/ms-excel"
Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312")
Dim headcontent As String
headcontent = ""
headcontent = "年" & vbTab & "月" & vbTab & "工号" & vbTab & "姓名" & vbTab & "银行帐号" & vbTab & "所在单位" & vbTab & "银行" & vbTab & "实发工资" & vbCrLf
Response.Write(headcontent)
For i = 0 To CountR - 1
Dim rowcontent As String
rowcontent = ""
For j = 0 To CountC - 1
If j = 4 Then
rowcontent = rowcontent & IIf(IsDBNull(ds.Tables(0).Rows(i)(j)), "0", ds.Tables(0).Rows(i)(j).ToString("mso-number-format:@")) & vbTab
Else
rowcontent = rowcontent & ds.Tables(0).Rows(i)(j) & vbTab
End If

Next
rowcontent = rowcontent & vbCrLf
Response.Write(rowcontent)
Next
Response.End()
End Function
...全文
238 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
lyx7796 2007-01-04
  • 打赏
  • 举报
回复
我自己解决了,咋给你们分撒
jiahehao 2006-05-09
  • 打赏
  • 举报
回复
把EXCEL格式先转成ACCESS格式,再处理就不会出现这样的问题了.我也碰到过类似的问题.
loveme4180 2006-05-09
  • 打赏
  • 举报
回复
lubosun 2006-05-09
  • 打赏
  • 举报
回复
学习
webwait 2006-05-09
  • 打赏
  • 举报
回复
把单引号换成空格符呢
webwait 2006-05-09
  • 打赏
  • 举报
回复
相信在EXCEL这个软件中如何输入15位或18位身份证号码的问题已经困挠了许多人,因为在EXCEL中,输入超过11位数字时,会自动转为科学计数的方式,比如身份证号是:123456789012345,输入后就变成了:1.23457E+14,要解决的方法有非常非常......多种哦,呵呵,现在为大家说几种比较简单快速的方法:
  1、在A1单元输入号码时,在前面先输入’号,就是:’123456789012345,这样单元格会默认为该单元为文本方式,会完整显示出15个号码来,而不会显示那令人讨厌的科学计数方式来了。
  2、如果已经输入了大量的号码,全部以科学计数显示的话,而又懒的按照上面的方法一个一个的重新输入的话,也有这个好方法哦,比如已在单元A1:A100输入了号码,按以下步骤做:》选择单元A1:A100》单击鼠标右键,设置单元格式》选择自定义,在‘类型’中输入‘0’即可,轻松搞定,呵呵!!
  3、还有一种用函数来解决的方法:在A1:A100已经输入大量的号码时,在B1单元中输入:=trim(\' \'a1),注意两个’之间是空格,这个公式的意思:先在A1单元15位号码前加个空格符号,然后用trim这个函数把空格符号去掉。输完后,B1单元也是显示出完整的15位数字了。
==
网上搜的
insiderc 2006-05-09
  • 打赏
  • 举报
回复
先写入execel文件后,再下载execel文件

62,047

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧