我正在尝试查找列名称“总循环时间”,然后在列的最后,我想要平均值,然后在整个列的中位数以下的一行。
下面是一个开始,但它似乎只从一个表中拉出Table14参考。我不明白如何陈述只看这个活动表。
Sub Macro10()
'
' Macro10 Macro
'
Range("U" & Cells.Rows.Count).End(xlUp).Select
ActiveCell.Offset(1, 0).Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = _
"=AVERAGE(Table14[[#Headers],[#Data],[Total Cycle Time]])"
ActiveCell.Offset(1, 0).Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = _
"=MEDIAN(Table14[[#Headers],[#Data],[Total Cycle Time]])"
'
End Sub
答案 0 :(得分:0)
假设在工作表的某个地方我们有一个标题单元格,其下方的数据如下:
运行这个短宏将:
1.定位标题和相关的数据列
2.将所需的统计数据放在值
Sub SaveStats()
Dim header As Range, DataRange As Range
Set header = Cells.Find(What:="total cycle time", after:=Cells(1, 1))
Set DataRange = Range(header, Cells(Rows.Count, header.Column).End(xlUp))
With Application.WorksheetFunction
Cells(DataRange.Rows.Count + DataRange.Row, DataRange.Column).Value = .Average(DataRange)
Cells(DataRange.Rows.Count + DataRange.Row + 1, DataRange.Column).Value = .Median(DataRange)
End With
End Sub
注意:强>
宏没有错误处理。如果标题下面没有数据,它将会死亡。