
Option Explicit
Function ConcatenaEx(sep As String, ParamArray rng())
Dim r As Range
Dim i As Integer
Dim idx As Integer
Dim sResult() As String
Dim x As Long, y As Long
idx = 0
For i = 0 To UBound(rng)
Set r = rng(i)
For x = r.Row To r.Row + r.Rows.Count - 1
For y = r.Column To r.Column + r.Columns.Count - 1
ReDim Preserve sResult(idx)
sResult(idx) = Sheets(rng(i).Parent.Name).Cells(x, y)
idx = idx + 1
Next y
Next x
Next i
Set r = Nothing
ConcatenaEx = Join(sResult, sep)
End Function
|
