Добрый день Уважаемые Эксперты.
Прошу помочь разобраться в следующем вопросе.
У наc имеется диапазон Range("F4:G9")
Подскажите пожалуйста как с помощью массивов в три захода его перенести в соседний диапазон Range("I4:J9")?
Под речевым оборотом в три захода, я имею ввиду естественно цикл. Т.е. если у нас массив размерностью 6х2 (6 строк Х 2 столбца), то по задумке желательно, чтобы
присваивание шло в переменные массива 2х2 (2 строки и 2 столбца). Координаты начала и конца каждой строки распологаются в диапазоне Range("C4:D6")
Вообщем вот мой вариант:
По факту выполнения данного кода заполнятся только диапазон Range("I8:J9"), т.е. тот A(Nom_grup), при котором Nom_grup = 3.
Соответственно, а как собственно говоря необходимо дополнить или видоизменить данный код, чтобы A() при Nom_grup = 1 и 2, тоже заполнялись?
на свои места, т.е. Range("I4:J5") и Range("I6:J7")?
Признаю что формулировку проблемы вряд ли можно отнести к разряду удачных, за это отдельно прошу прощения.
Попробую попроще, как диапазон(6Х2) с помощью трех массивов(2Х2) перенести в соседний диапазон с помощью VBA.
Прошу помочь разобраться.
Благадарю Вас.
Прошу помочь разобраться в следующем вопросе.
У наc имеется диапазон Range("F4:G9")
Подскажите пожалуйста как с помощью массивов в три захода его перенести в соседний диапазон Range("I4:J9")?
Под речевым оборотом в три захода, я имею ввиду естественно цикл. Т.е. если у нас массив размерностью 6х2 (6 строк Х 2 столбца), то по задумке желательно, чтобы
присваивание шло в переменные массива 2х2 (2 строки и 2 столбца). Координаты начала и конца каждой строки распологаются в диапазоне Range("C4:D6")
Вообщем вот мой вариант:
Код |
---|
Sub Maassive() Dim A As Variant Nom_grup = 3 ReDim A(1 To Nom_grup) k = 3 m = 3 For i = 1 To Nom_grup k = k + 1 A(Nom_grup) = Range("F" & Cells(k, 3) & ":G" & Cells(k, 4)) Next i Shag_cikla2 = Nom_grup Nom_grup = 0 For i = 1 To Shag_cikla2 Nom_grup = Nom_grup + 1 m = m + 1 Range("I" & Cells(m, 3) & ":J" & Cells(m, 4)) = A(Nom_grup) Next i End Sub |
Соответственно, а как собственно говоря необходимо дополнить или видоизменить данный код, чтобы A() при Nom_grup = 1 и 2, тоже заполнялись?
на свои места, т.е. Range("I4:J5") и Range("I6:J7")?
Признаю что формулировку проблемы вряд ли можно отнести к разряду удачных, за это отдельно прошу прощения.
Попробую попроще, как диапазон(6Х2) с помощью трех массивов(2Х2) перенести в соседний диапазон с помощью VBA.
Прошу помочь разобраться.
Благадарю Вас.