如何使用范围总是不同的公式

时间:2017-09-26 22:15:51

标签: excel vba excel-vba

如何在范围始终不同的报表上使用公式。例如,我想要将A列和B列相乘。所以我想编写一个代码,我可以将A * B乘以并将公式(或使用自动填充)一直扩展到最后一行。并且最大的挑战是必须以每次运行此宏的方式编写,列A和列以及B将具有不同的行数(列A和B将始终等于行数)。例如我今天运行这个宏300行,下次运行它我将有500行。

2 个答案:

答案 0 :(得分:1)

使用Range.AutoFill方法。

Sub FillColumnC()

    Dim LastRow As Long
    Application.ScreenUpdating = False
    LastRow = Cells(Rows.Count, "A").End(xlUp).Row
    Range("C2").Formula = "=A2*B2"
    Range("C2").AutoFill Range("C2:C" & LastRow)
    Application.ScreenUpdating = True

End Sub

在:

  ___A___B___C
1|            
2|   2   3    
3|   3   6    
4|   4   8    
5|   5   1    
6|   6   2    
7|   7   9    

后:

  ___A___B___C
1|            
2|   2   3   6
3|   3   6  18
4|   4   8  32
5|   5   1   5
6|   6   2  12
7|   7   9  63

答案 1 :(得分:0)

您可以尝试这样的事情......

Sub FormulaInDynamicRange()
Dim LR As Long
Application.ScreenUpdating = False
LR = Cells(Rows.Count, 1).End(xlUp).Row
Range("C2:C" & LR).Formula = "=A2*B2"
Application.ScreenUpdating = True
End Sub