Skip to main content

如何在 Excel 中使用進階篩選將資料複製到另一個工作表?

Author: Xiaoyang Last Modified: 2025-05-12

Excel 中的進階篩選功能允許您從數據集中提取和篩選資料。雖然它在同一工作表內運作無縫,但當您嘗試將篩選結果複製到另一個工作表時,可能會遇到警告訊息。在本指南中,我們將逐步向您展示如何使用進階篩選功能和 VBA 程式碼將篩選後的資料複製到另一個工作表。

A screenshot showing a warning message when using Advanced Filter to copy data to another worksheet in Excel

使用進階篩選功能透過進階篩選將資料複製到另一個工作表

使用 VBA 程式碼透過進階篩選將資料複製到另一個工作表


使用進階篩選功能透過進階篩選將資料複製到另一個工作表

這裡有一個簡單的解決方法來完成這項工作,請按照以下步驟操作:

1. 啟動您要使用進階篩選功能複製篩選結果的工作表。

A screenshot showing the worksheet activated for copying filtered results using Advanced Filter in Excel

2. 然後點擊 資料 > 進階,參見截圖:

A screenshot highlighting the Advanced option under the Data tab in Excel

3進階篩選 對話框中,選擇 複製至其他位置操作 部分,然後點擊 Range selection button 按鈕以選擇您要在另一張工作表中篩選的資料區域旁邊的 清單區域,繼續點擊 Range selection button 按鈕旁邊的 條件範圍 以從另一張工作表中選擇條件,參見截圖:

A screenshot of the Advanced Filter dialog box in Excel with List Range and Criteria Range selected

4然後點擊 Range selection button 按鈕旁邊的 複製至 方框以選擇一個單元格,您希望從當前工作表輸出篩選結果,然後點擊 確定 按鈕,篩選結果已經根據您的原始資料表提取到另一張工作表中。

A screenshot showing the filtered results copied to another worksheet using Advanced Filter in Excel


使用 VBA 程式碼透過進階篩選將資料複製到另一個工作表

如果您熟練於 VBA,可以使用以下 VBA 程式碼完成此任務。

1. 啟動您要篩選並將結果複製到另一張工作表的工作表。

2. 在 Excel 中按住 ALT + F11 鍵,打開 Microsoft Visual Basic for Applications 窗口。

3. 點擊 插入 > 模組,並在模組窗口中粘貼以下程式碼。

VBA 程式碼:使用進階篩選將資料複製到另一個工作表:

Sub Advancedfiltertoanothersheet()
'Updateby Extendoffice
    Dim xStr As String
    Dim xAddress As String
    Dim xRg As Range
    Dim xCRg As Range
    Dim xSRg As Range
    On Error Resume Next
    xAddress = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Please select the filter range:", "Kutools for Excel", xAddress, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    Set xCRg = Application.InputBox("Please select the criteria range:", "Kutools for Excel", "", , , , , 8)
    If xCRg Is Nothing Then Exit Sub
    Set xSRg = Application.InputBox("Please select the output range:", "Kutools for Excel", "", , , , , 8)
    If xSRg Is Nothing Then Exit Sub
    xRg.AdvancedFilter xlFilterCopy, xCRg, xSRg, False
    xSRg.Worksheet.Activate
    xSRg.Worksheet.Columns.AutoFit
End Sub

4. 然後按下 F5 鍵執行此程式碼,會彈出一個提示框讓您選擇要篩選的資料範圍,參見截圖:

A screenshot of a prompt box for selecting the filter range when using VBA to copy filtered data in Excel

5. 點擊 確定,另一個對話框將出現,提示您選擇篩選條件範圍,如截圖所示:

A screenshot of a prompt box for selecting the criteria range when using VBA to copy filtered data in Excel

6. 繼續點擊 確定,在彈出的對話框中,請選擇另一個新工作表中的單元格,您希望輸出篩選結果,參見截圖:

A screenshot of a prompt box for selecting the output range in another worksheet using VBA to copy filtered data in Excel

7. 最後,點擊 確定 按鈕,篩選後的資料已根據需要輸出到另一個指定的工作表中。

最佳辦公效率工具

🤖 Kutools AI 助手:基於智能執行方式革新數據分析:智能執行   |  生成代碼  |  創建自訂公式  |  分析數據並生成圖表  |  調用 Kutools 函數
熱門功能查找、標記重複值或識別重複項   |  刪除空行   |  合併列或單元格而不丟失數據   |   四捨五入無需公式 ...
高級 LOOKUP多條件 VLookup    多值 VLookup  |   多表查找   |   模糊查找 ....
高級下拉列表快速創建下拉列表   |  依賴下拉列表   |  多選下拉列表 ....
列管理器添加特定數量的列  |  移動列  |  切換隱藏列的可見狀態  |  比較區域和列 ...
特色功能網格聚焦   |  設計檢視   |   增強編輯欄    工作簿與工作表管理器   |  資源庫(自動文本)   |  日期提取器   |  合併資料   |  加密/解密儲存格    按列表發送電子郵件   |  超級篩選   |   特殊篩選(篩選粗體/斜體/刪除線...) ...
頂級 15 種工具集12 個文本工具添加文本刪除特定字符、...)   |   50+ 圖表 類型甘特圖、...)   |   40+ 實用 公式基於生日計算年齡、...)   |   19 個插入工具插入QR碼根據路徑插入圖片、...)   |   12 個轉換工具金額轉大寫匯率轉換、...)   |   7 個合併與分割工具高級合併行分割儲存格、...)   |   ... 還有更多

使用 Kutools for Excel 提升您的 Excel 技巧,體驗前所未有的高效。 Kutools for Excel 提供超過 300 種高級功能來提高生產力並節省時間。  點擊這裡獲取您最需要的功能...


Office Tab 將標籤式界面帶到 Office,讓您的工作更加輕鬆

  • 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中啟用標籤式編輯和閱讀。
  • 在同一窗口的新標籤中打開和創建多個文檔,而不是在新窗口中。
  • 將您的生產力提高 50%,每天為您減少數百次鼠標點擊!