2017-04-14 104 views
1

我期待找到单元格A2:D2的平均值并将它们放入E2中,然后将该方程式自动填充到500左右E单元格的其余部分。这是我到目前为止:查找几个单元格的平均值然后自动填充

Sub average() 
Dim nRows As Integer 
Dim nCols As Integer 

nCols = Range(Range("A2"), Range("A2").End(xlToRight)).Columns.Count 
nRows = Range(Range("A2"), Range("A2").End(xlDown)).Rows.Count 
Range("E2").FormulaR1C1 = "=AVERAGE(R[]C[ " & nCols & "]:R[]C[])" 

End Sub 

回答

1

下面的宏将把A到D的平均值放在E行中,并将公式拖到工作表的最后一行。

Sub Average() 

Dim lRow As Long 
Dim ACell As String 
Dim Col As String 

    Range("E2").Select 
    ActiveCell.FormulaR1C1 = "=AVERAGE(RC[-4]:RC[-1])" 
    lRow = WorksheetFunction.Max(Range("A65536").End(xlUp).Row, 
    Range("B65536").End(xlUp).Row, Range("C65536").End(xlUp).Row) 
    ACell = Range("E2").Address(RowAbsolute:=False, ColumnAbsolute:=False) 
    Col = Left(ACell, 1) 
    Range(ACell & ":" & ACell).AutoFill Range(ACell & ":" & Col & lRow) 

末次

+0

它的工作原理谢谢! –

相关问题