Вопрос

Я пытаюсь написать код VBA, который будет выбирать именованный диапазон, копировать его и вставлять в определенное количество строк.Что мне нужно знать, так это как выбрать диапазон ячеек, соответствующий приведенным выше.

Например.У меня есть диапазон «myRange», который относится к:"=$A$1:D$1$,$F$1,$K$1".Я хочу скопировать это и вставить в «=$A$2:D$2$,$F$2,$K$2», ссылаясь на «myRange» вместо строки ссылок на ячейки.

Любая помощь?

Это было полезно?

Решение

Что-то вроде этого?

Sub Test()

    Dim oRange As Range
    Set oRange = ActiveSheet.Range("A1:D1") ' Change this to point at the range to be copied

    Dim i As Integer
    For i = 1 To 10
        oRange.Copy
        oRange.Offset(i, 0).PasteSpecial xlPasteAll
    Next i

End Sub

РЕДАКТИРОВАТЬ:Хорошо, тогда что-то вроде этого (чтобы справиться с непересекающимися диапазонами):

Sub Test()

    Dim oRange As Range
    Set oRange = ActiveSheet.Range("A1,C1:D1") ' Change this to point at the range to be copied

    Dim i As Integer
    For i = 1 To 10
        Dim oArea As Range
        For Each oArea In oRange.Areas
            oArea.Copy
            oArea.Offset(i, 0).PasteSpecial xlPasteAll
        Next oArea
    Next i

End Sub
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top