数据库导出到excel问题 ,如数据库里数据为001002,导出后变成了1002,怎么解决,谢谢
excel单元格格式设置成文本可以,但不知道程序怎么实现?  Private Sub ExportExcelFromDataGrid(ByVal filename As String, ByVal ToExcelGrid As System.Web.UI.WebControls.GridView)
        Response.Clear()
        Response.Buffer = True
        Response.Charset = "utf-8 "
        'Response.AppendHeader("Content-Disposition ", "attachment;filename= " & Server.UrlEncode(filename) & ".xls ")
        Response.AppendHeader("Content-Disposition", "attachment;filename=" & Me.Server.UrlEncode(filename) & ".xls")
        'Response.ContentEncoding = System.Text.Encoding.Default()
        Response.ContentEncoding = System.Text.Encoding.UTF7
        '设置输出流为简体中文 
        Response.ContentType = "application/ms-excel "
        '设置输出文件类型为excel文件。 
        Me.EnableViewState = False
        'Dim myCItrad As New System.Globalization.CultureInfo("ZH-EN ", True)
        Dim oStringWriter As New System.IO.StringWriter()
        Dim oHtmlTextWriter As New System.Web.UI.HtmlTextWriter(oStringWriter)
        ToExcelGrid.RenderControl(oHtmlTextWriter)
        Response.Write(oStringWriter.ToString())
        Response.End()
    End Sub

解决方案 »

  1.   

    把Excel中的"单元格"属性改成"文本"就可以了
      

  2.   

    绑定数据源之后循环你的gridview加个样式
    grid.Items[i].Cells[j].Attributes.Add("style","vnd.ms-excel.numberformat:@");
      

  3.   

    Excel模块中,选择数字列---格式---单元格---分类属性改成"文本",然后再导入就ok 了
      

  4.   

    没用过vb.net 不知道你的GridView和DataGrid一样不
    绑定数据源之后循环你的grid加个样式 
    for( int i =0;i<grid.Items.Count;i++ )
    {
    for( int j=0;j<grid.Items[i].Cells.Count;j++ )
    {
    grid.Items[i].Cells[j].Attributes.Add("style","vnd.ms-excel.numberformat:@");
    }
    }
      

  5.   

    把excel的单元格,格式改成文本
      

  6.   

    grid.Items[i].Cells[j].Attributes.Add("style","vnd.ms-excel.numberformat:@"); 这个也行.
      

  7.   

    不用。楼主在导出的时个的值前面加上'就行了。如'001236这样到Excel就是001236