请测试- Sub 按钮1_Click()
- Dim arr, brr, i&, j&, crr, cName$$
- Dim sh As Worksheet, sht As Worksheet
- Set sh = Worksheets("汇总")
- ReDim brr(1 To 3000, 1 To 6)
- For Each sht In Worksheets
- If sht.Name <> sh.Name Then
- arr = sht.Range("A1").CurrentRegion
- For i = 4 To UBound(arr)
- If arr(i, 1) = "合计" Then Exit For
- If Len(arr(i, 2)) > 0 Then cName = arr(i, 2)
- If arr(i, 1) <> "小计" And Len(arr(i, 3)) > 0 Then
- x = x + 1
- brr(x, 1) = sht.Name
- brr(x, 2) = cName
- brr(x, 3) = arr(i, 3)
- brr(x, 4) = arr(i, 10)
- brr(x, 5) = arr(i, 13)
- brr(x, 6) = arr(i, 14)
- End If
- Next
- End If
- Next
- sh.Range("A1").CurrentRegion.Offset(1).Clear
- sh.Range("A2").Resize(x, 6) = brr
- sh.Range("A1").CurrentRegion.Borders.LineStyle = 1
- End Sub
复制代码 |