Один из способов - сбросить уменьшенный массив во второй массив, затем второй массив в ваш диапазон
Приведенный ниже код создает вариантный массив с 3600 строками на 16 столбцов (т. Е. A: P), данныевыгружается в массив для выборочных данных (обратите внимание, что у вас уже есть этот массив как Var) , затем переменная используется в качестве маркера для уменьшения массива до второго массива, затем второй массив записывается вrange.
Обновлено в соответствии с вашими точными местоположениями данных.В вашем случае у вас уже есть Var1 (ваш Var), поэтому вам просто нужна вторая часть кода, которая начинается с lngStop = 350
, и мой код Var1
ссылается на Var
Sub TestME()
Dim Var1
Dim Var2
Dim lngCnt As Long
Dim lngCnt2 As Long
Dim lngCnt3 As Long
Dim lngCnt4 As Long
Dim lngStop As Long
Var1 = Sheet1.Range([a1], [p3600]).Value2
For lngCnt = 1 To UBound(Var1, 1)
For lngCnt2 = 1 To 16
Var1(lngCnt, lngCnt2) = "I am row " & lngCnt & " column " & lngCnt2
Next lngCnt2
Next lngCnt
lngStop = 350
ReDim Var2(1 To UBound(Var1, 1) - lngStop + 1, 1 To UBound(Var1, 2))
For lngCnt3 = lngStop To UBound(Var1, 1)
For lngCnt4 = 1 To UBound(Var1, 2)
Var2(lngCnt3 - lngStop + 1, lngCnt4) = Var1(lngCnt3, lngCnt4)
Next lngCnt4
Next lngCnt3
Sheet1.[a3444].Resize(UBound(Var2, 1), UBound(Var2, 2)).Value2 = Var2
End Sub