我正在使用以下代码将gridview呈现为ASPX页面上的XLS文件:
Private Sub ExportGridviewToExcel()
Dim attachment As String = "attachment; filename=ItemSizeExport.xls"
Response.ClearContent()
Response.AddHeader("content-disposition", attachment)
Response.ContentType = "application/ms-excel"
Dim sw As New StringWriter()
Dim htw As New HtmlTextWriter(sw)
GV_Item_Data.RenderControl(htw)
Response.Write(sw.ToString())
Response.End()
End Sub
其中一列通常为空,但有时包含一个相当长的整数,例如2342515123332222 ..它是一个条形码类型号...所以不需要对它进行数学运算。
长话短说,XLS使这成为一个浮点,这对最终用户来说是垃圾。 (〜23432的电子 18)
我可以通过某种方式强制XLS中的此列成为字符串吗?
我不愿意通过任何其他方法生成XLS ...我的“后退”是在该列中的每个非空白空白条目之前写一个'#'字符,希望强制列到被解释为文本而不是数字。不幸的是,这不是一个理想的解决方案。
答案 0 :(得分:1)
您可以使用撇号代替该列中每个非空白条目之前的#字符。这会将其转换为文本。另一种可能的方法是附加一个带有列格式信息的宏,但我不确定这是否可行。