私は worksheetfunction.averageifs() および worksheetfunction.countifs() 関数を使用しています。
検索する条件を指定する条件がいくつかあるので、一連の雑然とした条件の代わりに、新しい条件を追加できる配列が必要です。
If (dep = 0) Then
sortspg = True
colcount = .CountIfs(column, "<3", badCol, "1")
If (colcount > 0) Then
colavg = .AverageIfs(column, column, "<3", badCol, "1")
insert = True
Else
insert = False
End If
Else
colcount = .CountIfs(column, "<3", DepColumn, dep, badCol, "1")
If colcount > 0 Then
colavg = .AverageIfs(column, column, "<3", DepColumn, dep, badCol, "1")
insert = True
Else
insert = False
End If
End If
次のような配列を渡すことができます。
CondArray(column => "<3", DepColumn => dep)
If colCount > 0 Then
CondArray[] = (badCol => "1")
その後
.CountIfs(CondArray)
.AverageIfs(column, CondArray)