在 Power Query 中连接文本字段时,我可以使用 ASCII 字符(特别是 char(10))吗?

Can I use ASCII characters (specifically char(10)) when concatenating text fields in Power Query?

我的 CRM 系统要求将 town/city 之前的地址行导入到单个字段中,并用分隔符 char(10) 分隔单独的行(如果有多个行)。我需要为该数据导入一个包含两列的文件,因此我需要将这些列合并为一列。

这是我在 Power Query 中尝试过的方法

[address line 1]&char(10)&[address line 2]

但是,我随后收到一条错误消息 "The name 'char' wasn't recognised. Make sure it's spelt properly"。

有什么想法吗?我觉得这与大多数人想在 Power Query 中做的相反,Power Query 将文本字符串分开...我实际上想将其压缩到一列中!

哎呀,我一发帖就想通了!正确答案是

[address line 1]&Character.FromNumber(10)&[address line 2]

编辑添加:下面的更好 - 上面的代码只有在两个字段都被填充时才有效。

if [Address Line 2] is null
then
[Address Line 1]
else
[Address Line 1]&Character.FromNumber(10)&[Address Line 2]

您已经有了答案,只是想我会添加另一种方法。

...Text.Combine({[address line 1], [address line 2]}, Character.FromNumber(10))...

它更灵活一些,因为您可以在 {} 之间添加尽可能多的字段。另外,我觉得Character.FromNumber(10)可以写成"#(lf)",所以上面也可以写成:

...Text.Combine({[address line 1], [address line 2]}, "#(lf)")...

或者您可以使用 Table.CombineColumns。所以像:

Table.CombineColumns(someTable, {"address line 1", "address line 2"}, Combiner.CombineTextByDelimiter("#(lf)"), "Combined")