2017-06-21 43 views
1

目前我正在尝试获取一组数字的最小值,最大值,平均值和标准偏差。我希望能够选择任何列并能够找到这些数据。即使我不得不分开进行选择。我怎样才能使这个工作?看下面:如何获得此VBA代码以使用任何选定的列?

Range("P4").Select 
ActiveCell.FormulaR1C1 = "=MIN(RC[-12]:RC[-8],RC[-6]:RC[-2])" 
Range("Q4").Select 
ActiveCell.FormulaR1C1 = "=MAX(RC[-13]:RC[-9],RC[-7]:RC[-3])" 
Range("R4").Select 
ActiveCell.FormulaR1C1 = "=AVERAGE(RC[-14]:RC[-10],RC[-8]:RC[-4])" 
Range("S4").Select 
ActiveCell.FormulaR1C1 = "=STDEV.S(RC[-15]:RC[-11],RC[-9]:RC[-5])" 
Range("P4:S4").Select 
Selection.AutoFill Destination:=Range("P4:S68"), Type:=xlFillDefault 
Range("P4:S68").Select 

回答

0

可能是这样的:

With Selection 
    .FormulaR1C1 = "=MIN(RC[-12]:RC[-8],RC[-6]:RC[-2])" 
    .Offset(,1).FormulaR1C1 = "=MAX(RC[-13]:RC[-9],RC[-7]:RC[-3])" 
    .Offset(,2).FormulaR1C1 = "=AVERAGE(RC[-14]:RC[-10],RC[-8]:RC[-4])" 
    .Offset(,3).FormulaR1C1 = "=STDEV.S(RC[-15]:RC[-11],RC[-9]:RC[-5])" 
End With