Excel宏复制粘贴到右侧,直到左侧单元格中的数据

时间:2019-03-15 05:53:26

标签: excel vba

我在工作表中有两个excel列,考虑为A(左)和B(右),我记录了一个宏,它将在其中计算公式并将其复制/粘贴到所有右侧的列中,直到左侧侧栏有数据。但是当下一次向左列添加一些额外的数据时,当我运行宏进行复制/粘贴时,它仅考虑先前的范围,而没有扩展到新添加的单元格。

示例:A1:A5在左侧,B1:B5在右侧,我在B范围内的公式是正确的范围,该公式基于A1:A5计算,即使我执行宏,我的宏也可以正常工作,并且仅限于B1:B5添加了仅复制B1:B5之类的A1:A10之类的新数据。在A边列的数据范围内自动使用宏的方法是什么?

2 个答案:

答案 0 :(得分:0)

根据您的描述,请尝试以下内容。

Sub FillFormula()
Dim i As Long
    i = Range("A1").End(xlDown).Row
        Range("B1").FormulaR1C1 = "=RC[-1]+5"
        Range("B1").AutoFill Destination:=Range("B1:B" & i)
End Sub

答案 1 :(得分:0)

下一次更好的是,您提供数据截图以及相关的VBA代码。

您使用的是静态范围,而您需要的是动态范围。

尝试

Sub test()
Dim i As Integer
i = WorksheetFunction.CountA(Range("A:A"))
Range("B1:b" & i).Select 'instead of selecting you can provide your formula to whole range.
End Sub

对于其他任何问题,请随时发表评论