2017-07-03 491 views
0

我确实有一个宏,它在N2单元格中添加公式并自动填充到表格中的最后一行。Excel VBA自动填充公式从列到Excel中的最后一列

Sub Formulae_to_find_EachFeatureCount() 
    Dim LastRow As Long 
    LastRow = Range("G" & Rows.Count).End(xlUp).Row 

    Range("N2").Select 
    ActiveCell.FormulaR1C1 = "=COUNTIFS(C2,R1C,C1,RC7)" 
    Range("N2").Select 
    Selection.AutoFill Destination:=Range("N2:N" & LastRow), Type:=xlFillDefault 
    ' Range("N2:N10").Select 
End Sub 

我也能找到最后一列(列名称和编号)与下面的代码:

Dim LastColumn As Integer 
    'Search for any entry, by searching backwards by Columns. 
    LastColumn = Cells.Find(What:="*", After:=[A1], _ 
    SearchOrder:=xlByColumns, _ 
    SearchDirection:=xlPrevious).Column 
    LastCol = Replace(Cells(1, LastColumn).Address(False, False), "1", "") 

现在我想从自动填充N个列公式,最后一个(使用)列。

+0

循环遍历列并填充第一个单元格,然后一次使用自动填充 –

回答

1

我想这是你在找什么:

Sub Formulae_to_find_EachFeatureCount() 
    Dim LastRow As Long 
    LastRow = Range("G" & Rows.Count).End(xlUp).Row 

    Range("N2").Select 
    ActiveCell.FormulaR1C1 = "=COUNTIFS(C2,R1C,C1,RC7)" 
    Range("N2").Select 
    Selection.AutoFill Destination:=Range("N2:N" & LastRow), Type:=xlFillDefault 
    Range("N1:N" & LastRow).Select 
    Selection.AutoFill Destination:=Range("N2:" & lastcol & LastRow), Type:=xlFillDefault 
End Sub 

注:但是使用选择应该避免。

+0

是的,这就是我一直在寻找的东西。只是将N1更改为N2,否则它将替换公式中使用的所有标题。有时公式计算不正确,更新它们,我是否应该在计算选项之间切换> –

+0

@SamadhanGaikwad - 是的,忽略了N1。但需要详细说明'未正确计算'。公式是否被错误地复制或者是公式的结果? – Mrig

+0

公式被正确复制,但有时问题出现1.当计算因我们单击任何单元而中断时。当有成千上万的公式存在时。 –