簡體   English   中英

如何在excel工作表中提取特定范圍並合並

[英]How to extract specific range within excel worksheets and consolidate

我正在嘗試在 excel 中自動執行報告任務,我需要將文件夾中的所有工作簿合並到一個工作表中,我遵循了 danwagner 提供的指南: https ://danwagner.co/how-to-combine-multiple-excel -workbooks-into-one-worksheet-with-vba/

但是由於數據的非結構化性質,它工作得很好,我沒有得到想要的結果。

基本上,我希望 excel 宏只選取特定范圍的值,我正在定義上一行和列數,但不知道如何讓 excel 嚴格復制/提取每個工作表中的表格(每個工作簿都有表的起始行和列數相同,但表的底行不同)。

我需要從每個工作簿中抓取的表格看起來像這樣,每個工作簿中只有一個工作表可以合並在一起: 示例 Excel 工作表

任何提示將不勝感激,順便說一句,我相信需要在指南中的宏的這些行上進行編輯,但我一直遇到錯誤:

        lngSrcLastCol = LastOccupiedColNum(wksSrc)
        With wksSrc
            Set rngSrc = .Range(.Cells(1, 1), .Cells(lngSrcLastRow, _
                                                     lngSrcLastCol))
        End With

我知道這不是您要的答案,但也許 PowerQuery 在這里效果更好?

如果您願意,可以嘗試以下操作:

  1. 打開新工作簿

  2. 轉到數據功能區

  3. 選擇“獲取數據”->“來自文件”->“來自文件夾”

  4. 導航到存放文件的文件夾

  5. 出現提示時選擇“轉換數據”

  6. 如有必要,將過濾器設置為僅抓取您想要的文件

  7. 在最左側的[Content] 列中,單擊帶有兩個向下箭頭的圖標

  8. 選擇您的表/選項卡並單擊“確定”如果您的工作簿中存在多個表或選項卡,系統將提示您導航到您選擇的表/選項卡的選項,我喜歡單擊復選框“跳過文件”有錯誤”,但這取決於您

  9. 您現在將應用一系列步驟來獲取您想要的數據,在您的情況下並給出您的示例,我將按照以下方式做一些事情:

  10. '刪除行' -> '刪除頂行' -> 行數 = 4

  11. '使用第一行作為標題'確保你先刪除了頂行

  12. [Column2] 上的“過濾器”以刪除空值假設第 2 列在目標詳細信息下方的行中永遠沒有文本,並且它始終具有與數據拉取的最后所需行匹配的數據

  13. 現在您應該擁有您的數據,根據您可能想要執行的任何格式需求或其他過濾器,進行您可能想要的任何其他編輯

  14. 選擇“關閉並加載”所有文件將應用相同的邏輯步驟並將最終結果構建到一個表中

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM