我有一张表(" DATA"),其中我有一个包含3列和162个数据集(行)+标题的表。这就是表格的样子:
我需要根据A列(" Site")中的网站名称计算C列的平均值("培训状态[%]")。
我创建了一个在新工作表中创建表的宏("概述"),其中每个网站只声明一次,现在我必须计算"培训状态&#34的平均值;对于每个站点。
决赛桌:
如何根据原始表中的数据将正确的值输入到最终表中,还考虑必须为每个站点名称计算平均值的条件?当然,每个站点的数据集数量并不相同(例如" BRU-Logistics"有3个数据集和" FRA-Logistics"有15个数据集)。
我发现了一些vba代码,但说实话,我真的不理解背后的逻辑,并且无法将其传递给我。
好吧,我的代码不完整。我只是想以某种方式开始,但我迷路了。
Sub Average()
Dim rng As Range
Dim LastRow As Long
Dim r1 As Long, r2 As Long
Dim lNoRows As Long
LastRow = Sheets("DATA").Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
Set rng = Sheets("DATA").Range("A2:C" & LastRow)
lNoRows = rng.Row.Count
For r1 = 1 To lNoRows
If rng(r1, 1) = rng(r2, 1) And r1 = r2 Then
End Sub
非常感谢!
答案 0 :(得分:0)
你实际上并不需要VBA。在单元格D2中,放置=AVERAGEIF(A:A,A2,C:C)
,然后复制。