VBA Excel:连接一系列单元格
我试图连接一行单元格的范围。 这组单元格有一个定义的开始,但是一个可变的结束。 我试过这样做,但没有奏效。 我仍然在学习VBA的语法,但我还没有看到任何说这不会工作。 任何帮助表示赞赏。
Dim hexVal As String For i = 4 To N + 3 Cells(3, i) = Application.WorksheetFunction.Dec2Hex(Cells(2, i), 2) & " " Next i hexVal = CONCATENATE(Range(Cells(3,i),Cells(3,N+3)) End Sub
你不需要Concatenate(),而是使用&来代替:
for i = 4 to N + 3 hexVal = hexVal & cells(3,i) next i
这是万一你只是连接string,你知道范围需要连接。
这是你的问题:
CONCATENATE(Range(Cells(3,i),Cells(3,N+3))
Cells
方法返回一个范围对象,其默认属性是.Value
属性。 所以,这相当于:
CONCATENATE(Range(Cells(3,i).Value,Cells(3,N+3).Value)
因此,除非这些单元格包含有效的地址string,否则它将总是失败 。
解决方法…只需使用内置的连接器
hexVal = Range(Cells(3,i) & Cells(3,N+3))
要么:
hexVal = CONCATENATE(Range(Cells(3,i).Value,Cells(3,N+3).Value))