Excel-把多个单元格的字符合并到一个单元格,以逗号分开

标签:
杂谈 |
分类: Excel_Tips |
Problem:把一组单元格的值汇总到一个单元格,以逗号或者分号分开,特别是在SQL的条件语句中,如果数据类型是字符,还要写成这种格式,很麻烦。('123','124','125','126','127','128','129','130','131','132','133','134','135','136','137')
Solution:
使用String_join 函数可以轻松实现,可以选择以逗号,分号;等字符分隔。
如果不需要单引号,可以使用Nbr_join,把两个函数另存为插件Addin
,就可以在每一个Excel文件中自由使用了。
Function String_join(Range_To_join As Range, separator As
String) As Variant
Dim j As Long
String_join = "'" & Range_To_join(1) & "'"
For j = 2 To Range_To_join.Count
String_join = String_join & separator & "'" &
Range_To_join(j) & "'"
Next j
String_join = VBA.Trim(String_join)
End Function
Function Nbr_join(Range_To_join As Range, separator As String)
As Variant
Dim j As Long
Nbr_join =
Range_To_join(1)
For j = 2 To Range_To_join.Count
Nbr_join = Nbr_join &
separator & Range_To_join(j)
Next j
Nbr_join =
VBA.Trim(Nbr_join)
End Function