在 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")
我的 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")