强制数值作为导出到excel的HTML表格上的文本

RSo*_*erg 9 html asp.net excel export-to-excel

我正在尝试修复工作中的错误,在经典ASP中呈现HTML表格,然后将其作为Excel文件发送到客户端.我将保留整个源代码示例,但基本上我们有一列是字母数字,但当值以一个或多个零开始时,零会消失.我知道这是处理数字的标准Excel行为,但我希望它将值视为文本.我怎样才能做到这一点?

问题中的细胞:

Response.Write("<td class='tdsmall' align='left' NOWRAP>" & rsPODetail("ITM_ID") & "</td>")
Run Code Online (Sandbox Code Playgroud)

例子

HTML | EXCEL
00212704 | 212704
00212336 | 212336
00212251 | 212251

Aru*_*ngh 10

只需在表格前添加一行即可

Response.Write("<style> TD { mso-number-format:\@; } </style>");
Run Code Online (Sandbox Code Playgroud)

检查出来:使用格式化为文本的行将Gridview导出到Excel


Jon*_*son 7

也许试试="00212704"

Response.Write("<td class='tdsmall' align='left' NOWRAP>=""" & rsPODetail("ITM_ID") & """</td>")
Run Code Online (Sandbox Code Playgroud)


Che*_*vel 5

不需要修改表格内容的一种选择是使用mso-number-formatCSS 样式,如此 SO 答案中所述。对于文本,您可以使用以下内容:

CSS:

.xlText {
    mso-number-format: "\@";
}
Run Code Online (Sandbox Code Playgroud)

HTML:

<td class="xlText">00030</td>
Run Code Online (Sandbox Code Playgroud)