VBA合併工作表(WorkSheet)

2021-01-17 騰訊網

VBA合併工作表(WorkSheet)

如果一個Excel工作簿文件中含有多個工作表,而且每個工作表中的數據結構基本相同,現在想把所有的工作表的數據合併到一個工作表中進行分析,該怎麼辦呢?

VBA可以解決這個問題。

首先在工作簿文件中插入一個名為「匯總」的空白工作表,然後按快捷鍵「ALT+F11」進入VBA開發環境,在左側單擊滑鼠右鍵,選擇「插入」——「模塊」,在模塊中輸入如下VBA程序。

首先,定義一個Excel工作表類型的對象變量objSumSht。提前定義變量並明確指定變量類型的好處是,可以充分利用VBA開發環境所提供的該對象的屬性和方法的自動提示功能。

接著,將工作表對象ThisWorkbook.Worksheets("匯總")賦值給對象變量objSumSht。此後就可以在程序中使用對象變量objSumSht代替工作表對象ThisWorkbook.Worksheets("匯總")了。

之後,是一個循環處理結構,用來處理ThisWorkbook中的每一個Worksheet,在處理每一個Worksheet時,需要判斷該Worksheet的Name是不是objSumSht.Name(即「匯總」工作表)相同,只有當前工作表不是「匯總」工作表,才執行下面的數據合併操作。

再接著,表示工作表的最後一行objSumSht.Rows.Count(如果你正在使用的是Excel 2007或Excel 2010,那麼objSumSht.Rows.Count的計算結果是1048576),End(xlUp).Row表示從工作表第1列的最後一行向上查找,直到第一次看到「不為空的單元格」為止時所在的行號,然後把這個行號加上1,表示下一次粘貼數據時的行號位置,最後把這個行號賦值給變量pasteRow。

最後,把正在處理的工作表的「使用區域(objWs.UsedRange)」,也就是含有數據的區域,複製並粘貼到「匯總」工作表objSumSht,粘貼的起始位置是.Cells(pasteRow, 1),也就是「匯總」工作表的數據區域下方的第1個空白行的第1個單元格處。

現在,把光標置於程序中的任意一行,按F5鍵執行程序,程序的執行結果如圖所示。

相關焦點

  • 運用Excel-vba合併工作表數據
    如下圖,工作簿中共有以下幾個工作表,現希望將各張工作表中的數據合併在一起。1.打開vba編輯器:右鍵單擊任意工作表,選擇「查看代碼」。2.輸入代碼:雙擊"ThisWorkbook",在代碼窗口中輸入以下代碼:Sub 合併當前工作簿下的所有工作表()Dim ws As WorksheetDim sh As Worksheet, i%On Error Resume Next '如遇錯誤繼續運行Application.ScreenUpdating = False
  • Python和VBA巔峰對決-工作表的合併
    讀者需要注意的是,多個工作表的合併,始終在一個工作簿內操作。讓我們一起通過Python和VBA來實現,看看誰更方便。Python工作表的合併,首先獲取所有的sheet表,轉變為一個列表推導式,其次調用pandas的concat()方法進行sheet表的連接。
  • excel VBA是什麼?VBA編程入門教程
    本篇將介紹excel vba是什麼?vba編程入門教程,有興趣的朋友可以了解一下!一、excel vba是什麼?VBA的英文全稱是Visual Basic for Applications,是一門標準的宏語言。VBA語言不能單獨運行,只能被office軟體(如:Word、Excel等)所調用。
  • Excel|VBA(4)——合併工作表
    一起來學office,提高辦公技能問題情境大體歸納一下,韓老師講過如下幾種多工作表合併的方法:一文中,講了利用SQL語句進行多工作表合併;在在一文中 ,講了利用數據查詢進行工作表合併;一文中,講述了利用數據透視表進行工作表合併計算
  • 小餘的VBA入門學習(七)
    單擊sheet表將通用改為worksheet selectionchange。表示的是當前工作表選區變化。worksheet change 。當前工作表任何變化worksheet avitvate 。當前活動工作表。
  • Excel VBA 批量匯總多個工作表,您只需要在一瞬間完成
    今天主要和大家介紹的是,我們如何在Excel中使用vba代碼來完成多個工作表的匯總工作。在某些時候,我們經常需要處理如下圖的工作表數據匯總工作,將其他月份的數據統一匯總到同一個工作表中。大多數人都是用手動粘貼複製來完成這個重複性的工作,那麼在你學習了本篇,你就會用更高的效率去完成這個事情了。
  • 工作表拆分,VBA用了30行,Python只有8行
    工作中,很多小夥伴都會遇到一些需求,將一份Excel文檔按照部門進行拆分,每個部門是一個單獨的工作表。讀者需要注意的是,多個工作表的拆分,始終在一個工作簿內操作。讓我們一起通過Python來實現。本例目標:根據指定的Excel文件按照部門拆分成多個工作表。最終效果:按照部門生成工作表。技術點:groupby()方法的使用,Excel的追加模式等。
  • Excel多表合併:學會這招從此事半功倍
    如果想做匯總分析比如做個月報季報年報,這些分散在不同工作表中的數據就是個大麻煩,他們不能使用數據,透視表做快速分析,如果想跨表分析呢,需要極複雜的函數。甚至要使用vba代碼才能實現,而且隱患不少。所以普遍的做法是把這些數據都合併到一張清單上然後再通過數據透視表做出各種分析報告。那只能一張張複製粘貼或使用vba代碼合併嗎?
  • Excel表格如何批量合併工作表呢?
    Excel表格如何批量合併工作表呢?工作表很多的時候,一個一個打開瀏覽很麻煩,那麼有什麼方法可以合併多個工作表,這樣就可以一次性瀏覽多個工作表了,提高工作效率呢?那麼下面小編就簡單介紹一下Excel表格如何批量合併工作表,希望能幫到您。首先,準備一下需要合併的工作表。
  • excel拆分合併技巧:將工作表合併成總表的方法
    在上篇文章中我們給大家介紹了4種拆分工作表的方法,分別是函數、透視表、高級篩選、VBA,不知道小夥伴們學習得咋樣了?今天我們將學習合併工作表的三種方法,趕緊來看看吧!(由於合併工作表的第一種方法函數法,涉及的函數的應用相對複雜,在函數方面比較薄弱的同學,可以先看第二、三種方法,再繼續學習第一種~)*********【前言】在上篇文章中,對於總表拆分為分表的操作一共給大家分享了四種方法,建議同學們一定要勤加練習,才能熟能生巧。既然說了拆分,那麼就沒有道理不說「合併」。
  • 一鍵篇 | Excel一鍵實現所有工作表的內容合併到一個新的工作表
    在處理數據過程中,您是否碰到過清單之類匯總的情況,就是將同一個工作簿中的所有工作表的內容合併到一個工作表中。對於不會取巧的朋友,可能就是一個表一個表的複製,然後粘貼拼湊在一塊,若碰到表格數量不多的情況,這種方法還好,若是碰到工作表數量龐大,例如50個工作表,100個工作表......這種方法就很雞肋。
  • EXCEL多工作表動態合併,其實很簡單
    小夥伴們好啊,今天老祝和大家分享一個動態合併多個工作表的技巧。很多時候,咱們的數據是按照部門或是月份等項目,分別存放在不同工作表中的,要對這些數據進行分析匯總的時候,需要先將不同工作表中的數據合併到一起才可以。就像下圖所示的數據,三個工作表中是某品牌的商品,在不同區域的銷售記錄。
  • Excel多表合併與查詢,你也試試吧
    每到年底老闆就要我匯總統計很多工作表,這下好了,可以直接套用的代碼!經過幾天的學習可以使用vba寫了一個簡單的成績查詢與匯總,希望可以幫到有需要的人!如果有瑕疵還望諒解!跨表逐個查詢一、信息查詢界面往往在登記學生成績的時候我們的工作表是以班級命名的,如果要查詢某個學生的成績在使用函數公式可能會比較麻煩一些!
  • excel匯總多個工作表數據的神器——合併計算
    在excel中,經常會遇到多個表格的數據需要匯總,但是有時候每個表格的順序、項目不一定完全相同,比如下圖中,動圖一是五個不完全相同的工作表,如何將五個工作表的數據匯總到一個工作表中(圖二所示),並對這些數據進行求和或者其他運算呢?這裡就為大家介紹一下合併計算的功能。
  • EXCEL多個工作簿快速合併到一個工作表,一鍵搞定!
    快到年底了,有小夥伴提出了如何快速將12個月的數據合併到一個工作表問題,比如將每個月不同銷售員不同產品的銷售數據匯總到一個工作表。今天我們就來分享一個快速將多個結構相同的工作簿數據匯總到一個工作表的方法,快速簡單,一鍵搞定,提問的小夥伴速來圍觀!
  • Excel-合併同類項
    今天和大家分享一下在Excel中如何合併同類項,合併同類項就是將相同類型的數據都合併在一個單元格中,下圖是一張員工明細表,現希望將左邊的數據轉化為右邊的格式,即將同一個小組同一個狀態的數據放在一個單元格中。
  • VBA拆分工作表
    VBA拆分工作表 假設有如圖所示的數據,我們的任務是按照「地區」把原始數據拆分成一個工作表。我們該如何做呢?
  • Excel VBA的基礎知識點,初學者必須掌握
    比如說Excel工作表本身就是一個對象,包括我們的單元格、圖表、工作薄,都是統稱為對象。我們在Excel中編程就是在操作這些對象,在Excel中處在頂端的對象是Application,其次是workboook,然後是worksheets,再次是range。他們的層級關係是從高到低的,分層級的對象。如下圖所示:假如我們要操作指定工作薄的指定工作表的指定單元格,這個代碼是怎麼去寫呢?
  • 3分鐘就能夠搞定,快速合併多個excel工作表
    我們在實際工作中,有時候需要將多個excel工作表合併到一起,這次我們要分享的一個excel小技巧,不需要使用到VBA,我們只需要通過一系列操作就可以使多個工作簿裡面的多個工作表,一次性的合併到一個工作簿裡面。
  • excel在不同工作表中對相同類型的數量進行合併計算
    excel在不同工作表中對相同類型的數量進行合併計算合併計算不僅可以計算同一張工作表中進行計算,也可以在不同工作表中的相同區域和類型進行合併計算。解決方法:在不同工作表中對組數相同數據進行合併計算的操作方法第一步. 在【合計表格】工作表選擇【需要求和的部分】單元格區域,如圖:第二步. 再彈出【合併計算】對話框,在【引用位置】文本框中引用原數據表中求和區域,然後單擊【添加】如圖:第三步.