访问换行符成为_x000D_

时间:2016-03-23 00:36:29

标签: excel ms-access excel-formula newline

我试图通过excel中的数据创建访问报告。所以我使用外部数据选项在访问中导入我的Excel工作表,但我的换行符仍然显示为" _x000D _"

作为一个例子,我使用一个包含4列的excel表,所有列都带有标题,并且所有数据都包含从左到右依次排列的1行数据:

="a"&char(10)&"b" 
="a"&char(13)&"b" 
="a"&char(10)&char(13)&"b" 
="a"&char(13)&char(10)&"b"

在我的excel表中,我尝试将换行符更改为我能想到的所有内容,但似乎已完成某些操作的两个是char(10)和char(13),但char(10)不会出现在完全访问,char(13)似乎变成" _x000D _"

1 个答案:

答案 0 :(得分:5)

请参阅How to import from Excel and keep the line breaks

  

Excel使用换行符(ASCII 10)作为行分隔符,而Access使用回车符+换行符(ASCII 13后跟ASCII 10)的组合作为行分隔符。

     

导入后,您可以使用Replace功能将Chr(10)替换为Chr(13)+ Chr(10)。例如,您可以执行如下查询:

UPDATE ImportedExcelTable SET MyField = Replace([MyField], Chr(10), Chr(13) & Chr(10));

因此,将换行符放入Excel单元格的唯一正确方法是您的第一个版本:

="a"&char(10)&"b"

然后在导入表格后,使用更新查询将Lf替换为访问权限换行符CrLf