用于将行向下拖动到显示的特定行的VBA代码

时间:2017-10-05 16:01:15

标签: excel vba

After macro runs

Before macro runs

嗨,我正在尝试为图像中显示的表编写VBA代码,这是一个乘法表。我知道如何使用for循环,如果它只是在for循环中使用单元格引用和乘法,但我正在尝试直接从我到目前为止的工作,因为在我的作业中需要我。我的VBA代码低于

    Sub Macro1()

    Range("C5:F5").Select
    Selection.AutoFill Destination:=Range("C5:F9"), Type:=xlFillDefault
    Range("C5:F9").Select

    Range("B5", Range("B4").End(xlDown)).ClearContents

    For rw = 1 To Range("B2").Value

    Cells(rw + 4, 2) = rw

    Next rw

End Sub

我的for循环根据单元格B2中的数字计算行数,到目前为止,我有代码将4列C复制到F,其中乘法公式为并将其向下拖动到随机行。但我需要的是代码允许复制4个单元格粘贴到B列中显示的最后一行。例如,如果行数为10,则列之间的所有单元格都会填满,但是你可以在图像中看到它没有。此外,请注意我试图保持列固定,所以我不需要显示不同列数的代码。我只需要将第一行中的公式复制并粘贴到最后一个行号,这取决于B2中的数字

我知道乘法的简单for循环是

Sub Macro1()

Range("B4:FF4000").ClearContents

For rw = 1 To Range("B2").Value
    For colctr = 1 To Range("B3").Value
        Cells(rw + 4, colctr + 1) = rw * colctr
    Next colctr
Next rw

End Sub

但我需要在宏中使用复制和粘贴,并使其以单元格B2中行的值结束。

0 个答案:

没有答案