VBA复制粘贴范围到具有内容的行的相应范围

时间:2015-06-25 10:58:10

标签: excel vba excel-vba

我有一个名为“SicknessRecordGraded”的电子表格,它有不同的行数 A - F(1 - 6)列具有要计算的原始内容 然后,从列I-AG(9-33),有一系列公式计算A-F中的信息 我正在准备一个vba宏来自动将公式从I - AG复制到A - F中有内容的每一行。
我一直在尝试编写宏如下。我有使用.resize函数复制正确的范围,但是我还没想出如何粘贴到正确的范围。

    Public Sub experiment2()


Dim rw As Long
rw = 3

    ' Select initial sheet to copy from
    Sheets("SicknessRecordGraded").Select


    ' Find the last row of data - xlUp will check from the bottom of the spreadsheet up.
    FinalRow = Cells(Rows.Count, 1).End(xlUp).Row
    ' For loop through each row
    For x = 1 To FinalRow

            Cells(rw, 9).Resize(1, 33).Copy ' Resize from intial range. Columns I - AG.

             NextRow = Cells(Rows.Count, 1).End(xlUp).Row + 1 'Continue incrementing through the rows.
            Cells(NextRow, 1).Select ' Find the next row.
            ActiveSheet.Cells(NextRow, "I").PasteSpecial xlPasteAll ' Paste information.
            Sheets("SicknessRecordGraded").Select 'Reselect sheet to copy from. Probably uneccessary.

    Next x
End Sub

我认为要修改的行是

ActiveSheet.Cells(NextRow, 1).PasteSpecial xlPasteAll ' Paste information.

包含另一个范围函数。

1 个答案:

答案 0 :(得分:0)

如果您希望开始粘贴的范围是Cells(NextRow, 1),那么您只需使用:

ActiveSheet.Cells(NextRow, 1).PasteSpecial xlPasteAll

或:

ActiveSheet.Paste Cells(NextRow, 1)