Когда вы считываете диапазоны в массив, вы генерируете двумерный массив с основанием 1. Так, например, Largeur
- это 2d и начинается с 1, тогда как Concatenated_Array
- это 1d и начинается с 0.
Вместо этого вы можете прочитать различные диапазоны в одном массиве, изменить размер, чтобы добавить другой столбец в конце, зациклить все строки в массиве и объединить столбцы 1-4 и добавить в столбец 5. Затем вы можете получить доступ к тому, что хотите из последнего столбца в массиве.
Dim loopArray()
With ActiveSheet
loopArray = .Range(.Cells(1, 9), .Cells(CntRow_updated, 12)).Value
End With
ReDim Preserve loopArray(1 To UBound(loopArray, 1), 1 To UBound(loopArray, 2) + 1) 'make space for concatenated column at end
For i = LBound(loopArray, 1) To UBound(loopArray, 1)
loopArray(i, 5) = loopArray(i, 1) & loopArray(i, 3) & loopArray(i, 3) & loopArray(i, 4)
Next i