可以直接用分类汇总解决
VBA代码如下
Sub SubTotal()
Dim k%
k = 4
For i = 4 To [e65536].End(xlUp).Row
If Cells(i, 6) = "小计" Then
宏没 For j = 10 To 20
If j Mod 3 <> 0 Then _
Cells(i, j) = Application.Sum(Range(Cells(k, j), Cells(i - 1, j)))
Next
没绝逗 k = i + 1
枯卖Next
Next
End Sub