天天看點

一鍵搞定!4W個工作表彙總,人人都用的上

臨下班前,公司老闆突然“活躍”起來:

“小張,下班前把第二季度的所有銷售報表都彙總給我。”

“小李,找一下最近2年的行業案例銷售額彙總表。”

這些話,身在職場的你一定并不陌生。在上司眼裡,仿佛你10分鐘就能搞定8小時才能完成的工作。

我們有時候需要将在幾百個工作表的資料到同一個工作表當中,今天和大家分享的是一鍵彙總各分表資料到總表。

照例舉個栗子,如下圖,一個工作簿,包含多個工作表,現在需要将各個分表的資料彙總到總表中……

一鍵搞定!4W個工作表彙總,人人都用的上

有很多很多的粉絲都在詢問這樣的問題,有些人會想到使用資料透視表或者合并計算等方式進行操作。但是呢?這兩種操作方式都有它的局限性,稍有不足。比如存在合并單元格時,它們也就無能無力了。

但是如果我們使用代碼來完成,那麼就非常簡單,您隻需拿過去用即可:代碼的操作動畫如下:

一鍵搞定!4W個工作表彙總,人人都用的上

源代碼如下:

Sub CollecSht()
    Dim Sht As Worksheet, Rng As Range, k&, Trow&
    Trow = Val(InputBox("請輸入标題的行數", "提醒"))
    If Trow < 0 Then MsgBox "标題行數不能為負數。", 64, "警告": Exit Sub
    Application.ScreenUpdating = False
    Cells.ClearContents
    Cells.NumberFormat = "@"
    For Each Sht In Worksheets
        If Sht.Name <> ActiveSheet.Name Then
            Set Rng = Sht.UsedRange
            k = k + 1
            If k = 1 Then
                Rng.Copy
                Range("A1").PasteSpecial Paste:=xlPasteValues
            Else
                Rng.Offset(Trow).Copy
                Cells(ActiveSheet.UsedRange.Rows.Count + 1, 1).PasteSpecial Paste:=xlPasteValues
            End If
        End If
    Next
    Range("a1").Activate
    Application.ScreenUpdating = True
    MsgBox "一共彙總了" & k & "個表格。"
End Sub      

如果需要上述源檔案和代碼工作薄,可以直接私信我“多工作表彙總”,即可獲得練習檔案!

粉絲通過4年的文章學習,從小白變成财務負責人,工作上的表格處理能力變得很強大。這也印證了當年說過的話,如果你能堅持看文章3-5年,你必然可以成為一個很厲害的人。