|
- Sub test0()
- Dim ar, br()
- Dim i As Long, j As Long, cnt As Long, pos As Long
- Dim subTot As Double, total As Double, rowSize As Long
- ar = Range("A1").CurrentRegion.Resize(, 5).Value
- ReDim br(1 To UBound(ar) * 3, 1 To UBound(ar, 2))
- rowSize = 1
- For i = 2 To UBound(ar)
- cnt = cnt + 1
- rowSize = rowSize + 1
- subTot = subTot + Val(ar(i, 5))
- total = total + Val(ar(i, 5))
- For j = 1 To UBound(ar, 2)
- br(rowSize, j) = ar(i, j)
- Next
- If cnt = 5 Then
- For j = 1 To UBound(ar, 2)
- br(pos + 1, j) = ar(1, j)
- Next
- rowSize = rowSize + 1
- br(rowSize, 1) = "小计"
- br(rowSize, 5) = subTot
- pos = rowSize
- rowSize = rowSize + 1
- subTot = 0
- cnt = 0
- End If
- Next
- If cnt Then
- For j = 1 To UBound(ar, 2)
- br(pos + 1, j) = ar(1, j)
- Next
- rowSize = rowSize + 1
- br(rowSize, 1) = "小计"
- br(rowSize, 5) = subTot
- rowSize = rowSize + 1
- End If
- br(rowSize, 1) = "合计"
- br(rowSize, 5) = total
- With Range("G1")
- .CurrentRegion.ClearContents
- .Resize(rowSize, UBound(br, 2)) = br
- End With
- End Sub
复制代码 |
评分
-
1
查看全部评分
-
|