添加到现有字符串值

时间:2017-09-15 16:09:42

标签: excel string vba

因此,在文档中,我希望将一列字母转换为单个单元格。例如,如果列包含字母h,e,l,l,o,则程序将放入单个单元格" hello"。我尝试使用以下代码执行此操作,但它将输出单元格留空

Dim t1 As String
Dim t2 As String

Do While Cells(i, "B").Value <> ""
t2 = Cells(i, "D").Value
t1 = Cells(i, "B").Value
Cells(i, "D").Value = t1 & t2
i = i + 1
Loop

2 个答案:

答案 0 :(得分:3)

Function MyConcat(rng as range)
    dim rngEach as Range
    For Each rngEach in rng            
        MyConcat = MyConcat & rngEach.Value      
    Next rngEach
End Function

然后在单元格中放置:=MyConcat(B1:B5)

enter image description here

答案 1 :(得分:1)

没有必要为此使用VBA。 Excel内置了函数CONCATENATE()

像这样使用:

在需要输出的单元格中输入公式

=CONCATENATE(Select cell 1, select cell2,select cell3)

因此,您可以选择要加入的所有单元格。在每个单元格之间加一个逗号。