【发布时间】:2013-08-09 13:48:37
【问题描述】:
我对使用 VBA 比较陌生。我有这段代码可以读取范围内的一组数据并将数据连接到一个单元格中。我有大量需要运行此代码的单元格。有人可以帮我循环它,所以当代码完成一个范围时,它会向下移动下一个单元格并从下一个范围开始?
Sub ConcatenateAll()
Dim x As String, y As String, rng As Range, cell As Range
With ActiveSheet
Set rng = .Range("AT1:CB20")
For Each cell In rng
If cell.Value <> "" Then
x = x & cell.Value & "; "
End If
Next
.Range("AK1").Value = Left(x, Len(x) - 2)
End With
End Sub
【问题讨论】:
-
遍历范围的顺序是否重要?另外,“当代码完成一个范围”是什么意思?除了
.Range("AT1:CB20"),还有其他范围吗?