如何把换行符细胞内导出到Excel文件时
问题描述:
我通过生成在VBScript中一个普通的HTML结构,这样的数据导出到Excel文件:如何把换行符细胞内导出到Excel文件时
Response.ContentType = "application/vnd.ms-excel"
Response.AddHeader "Content-Disposition", "attachment; filename=excelTime.xls"
response.write "<table>"
response.write "<tr>"
response.write "<td>User Name</td>"
...
一些数据单元包含多个值,以逗号分隔。我在每一个单独的线,但在同一小区内写出这样的值的要求,没有逗号,像这样:
就好像我已经把每一个值后Alt + Enter键在Excel中。我尝试使用VBScript替换()函数来代替换行逗号,像这样:
Response.write "<td>" & Replace(Value, ",", " <br/> ") & "</td>"
但它打破了细胞成多个细胞,而不是:
我怎么能achive的期望的结果呢?我尝试了不同的变体,但没有任何帮助:
Replace(Value, ",", " vbCrLf ") 'does not put a line break
Replace(Value, ",", " CHAR(13) ") 'puts the "CHAR(13)" text between values
Replace(Value, ",", " \\n ") 'puts the "\\n" text between values
Replace(Value, ",", " \n ") 'puts the "\n" text between values
Replace(Value, ",", " \r ") 'puts the "\n" text between values
也许你知道一些其他的方式来做到这一点?
答
已经想通了。取而代之的"<br/>"
你应该只使用:
Response.write "<td>" & Replace(Value, ",", " <br style='mso-data-placement:same-cell;' /> ") & "</td>"
+0
已经回答 - [答:经典ASP XLS输出与单元格中的回车](http://stackoverflow.com/a/9158446/692942) – Lankymart
瓦特i个你'替换()'的例子,如果你想用'CHR(13)来代替','vbCrLf'等,你必须通过实际的值不是?该值的字符串表示 - 即'Replace(Value,“,”,vbCrLf)'。 – Lankymart