在tsql代码中添加alt +input(excel换行符)

我试图创build一个脚本,从数据库返回concat行,并与c#用文本填充excel文件。

我已经pipe理好每一件事,就是找不到换行的解决scheme…

尝试过char(10)+ char(13)等等。

我知道在Excel中如果要添加新行,他显示使用alt + enter。 是否有代码添加到我的tsql脚本来获取Excel文件中的换行?

谢谢埃雷兹

我遇到了同样的问题,但我是从SQL Server Management Studio结果窗口复制并粘贴到Excel文件中的。 这是同样的问题,更直接。

对于那些不了解问题的人来说,这里有一个repro。 在SSMS中运行以下内容并将结果复制并粘贴到Excel中。 设置单元格以包装文本。

SELECT 'Hello' + CHAR(10) + 'World' 

你会看到一个单元格上的Hello和它下面的单元格上的World。 我们试图看到的是

 Hello World 

在一个有断行的单元格中。

我的解决scheme是将结果放在引号中。 有几种方法可以做到这一点。 我发现这看起来最清洁:

 SELECT QUOTENAME('Hello' + CHAR(10) + 'World', '"') 

结果是SSMS结果窗口中的“Hello World”。 但是当粘贴到Excel和包装文本的单元格设置,我会得到所需的结果。

Cr + Lf实际上是13 + 10而不是10 + 13。

如果这不起作用,一个字符(10)将会。

我的问题的解决scheme是什么使用
在tsql和解码它在C#中,因为我从数据集创build一个HTML表,然后将HTML表格转换成Excel样式表。

SQL:

 SELECT br_in.BIText + '<br>' 

C#:

 StrReport.Append("<td>" + HttpUtility.HtmlDecode(ds.Tables[k].Rows[i][j].ToString()) + "</td>"); 

这是在我的情况下唯一的工作,它甚至是有意义的,如果你想想… … –

谢谢埃雷兹