我现在的数据是这样的,110105006002,   
  导入到excel之后,就成了1.10105E+11,我该如何控制它的格式呢?
我看好多人说前面加'可以,但是那样的话,数据部成这样的了吗'110105006002

解决方案 »

  1.   

    换个格式,比如换成string的存,读取的时候在换过来..
      

  2.   

    没用啊,换成nvarchar  text啥的都不行。数据库类型中没有string啊,varchar nvarchar这些类型存储的不就是string 吗
      

  3.   

    我的做法是在你的字符串后边加一日本空格就是智能ABC  v8出来后的空
      

  4.   

    数据前面加个0就可以显示正常,0110105006002但不知道会不会影响到数据
    其实那个事excel的问题,11位的数字就没有问题,你的数字正好是12位
      

  5.   

    chenlinglingcll:
    不是几位的问题啊,我有个编号列,里面的值是0002,但导入到excel里是2
      

  6.   

    这个是EXCEL的格式问题   不需要程序控制    你可以右击你的那列单元格 选择单元格格式 然后选择你想要的格式   比如 0002   在A 这列  你选中A列 吧他单元格格式设置成文本  你程序输出 是002  他就是002了!
      

  7.   

    对了  你如果用到模板的话可以现在模板上设置  如果你先程序创建的EXCEL 的话  你可以先用vba  也就是excel的宏   吧宏转换成C# 语言
      

  8.   

    我是通过sql语句  通过程序将数据库中的数据导出到EXcel里,您说的右击你的那列单元格 选择单元格格式,那是直接在excle上操作啊,难道就不能通过程序设置excel的格式吗?我看了有些人这样弄的  .numberformat:=“@”,可是放到我的程序里有错误。
    还有的说前面加'Excle可以自动转换,可是我不管加到数据库里还是加到sql语句里,都不行,加sql语句里直接就有错
      

  9.   

    我知道有这个办法,可是我加上有错呢。在哪加呢?我一开始直接在数据库字段值里在值的前面直接加了个'这样输出的值里带',这样不行。后来我在sql语句里加的,有错误。
    sql = "select ID as '编号',realname as '名字(单位名称)',huiyuantype as '会员类型',sex as '性别',age as '年龄','''+IDCard as '身份证'as '社会工作年限' from huiyuan";sql = "select ID as '编号',realname as '名字(单位名称)',huiyuantype as '会员类型',sex as '性别',age as '年龄','"+"+IDCard as '身份证' from huiyuan";这两种都不行,提示sql语句有错误。请问到底怎么个加法呢,谢谢
                
                
      

  10.   

    兄弟 你会用excel 的宏吗  我说的第二个方法就是  先在excel用宏记录 他会把你的操作会自动的记录成vb  你在vb转成c#  复制到你程序就行了  你其他方法什么加引号呀  这些方法别试了  没用的 直接从程序控制excel 的单元格格式最好
      

  11.   

    e.Item.Cells[0].Attributes.Add("style","vnd.ms-excel.numberformat:@"); e.Item.Cells[3].Attributes.Add("style","vnd.ms-excel.numberformat:¥#,###.00"); 参考 
    http://dotnet.aspx.cc/article/8a4cbf47-b888-4832-3389-ed3a3a3c8aab/read.aspx
    http://dotnet.aspx.cc/Exam/OutPutExcel.aspx