前言:今天在处理数据的时候,在
数据库中用到了\n换行符号,目的是在同表格内做到数据多行显示,比如
| 字段名1 |
?字段名2 |
?字段名3 |
| ?1 |
数据一行 数据二行 数据三行? |
例子是在sql查询后的结果? |
| ?2 |
例子如上? |
数据未导出? |
本来在sql查询后是如此显示的,但是后来导出文本格式,Excel自文本导入内容时就会报错,那么问题来了,
?
如何做到Excel自文本导入内容时如何做到单元格内换行?
?
正文:在网上找了很多例子,其中有位前辈讲的很有道理,原话如下:
?
excel实现自动换行的两个必要条件
?
1.将excel单元格的格式设置成自动换行。
?
2.在文字中间加上换行符 CHAR(10)
?
csv是普通的文本文件,无法满足第一个条件。所以自动换行的功能是无法实现的。
?
这位前辈这句话着实让我仔细思考了一下,再根据网上一些例子,果然让我找到了解决办法:
?
就是利用SQL字符串操作输出上面字段名2下的多行数据如下:
?
="数据一行","数据二行","数据三行"
?
然后再利用Excel自文本导入内容后,excel文本文档中就会显示:
?
="数据一行","数据二行","数据三行"
?
最后,利用替换功能将,替换成&CHAR(10)&,替换后变成="数据一行"&CHAR(10)&"数据二行"&CHAR(10)&"数据三行",在另一个单元格内输入=待换行的单元格,并将其设置为自动换行,然后这个单元格内的内容就是我们想要的内容。
| 待换行的单元格 |
理想的结果 |
| 数据一行数据二行数据三行 |
数据一行 数据二行 数据三行 |
| ="数据一行"&CHAR(10)&"数据二行"&CHAR(10)&"数据三行" |
=待换行的单元格 |
结尾:可能没表达好,大家好好看上面的表格吧,应该好理解点!休息了,不早了。