KutoolsforOffice — 一套方案,五大工具。事半功倍。三月特賣:20% 折扣

如何在 Excel 中將資料透視表篩選器連結至指定的儲存格?

作者Siluvia修改日期

在 Excel 中,您可能經常希望打造互動式報表,讓資料透視表的篩選器自動反映特定儲存格中的值。如此一來,使用者只需在單一位置選取或輸入篩選條件,資料透視表便會即時動態更新。當您在設計儀表板或建構用於資料探索的篩選介面時,這種做法尤其實用。

本文提供多種實用解決方案,包括基於 VBA 的方法與其他 Excel 內建技巧,協助您將資料透視表篩選器連結至儲存格值,輕鬆打造動態報表效果。


透過 VBA 程式碼將資料透視表篩選器連結至特定儲存格

如果您希望在儲存格與資料透視表篩選器之間建立最直接的連結——讓儲存格值一變更,資料透視表篩選器便自動更新——VBA 提供了一種實用的實現方式。此方法特別適合用於互動式儀表板或報表,讓使用者能透過單一儲存格快速掌控資料切片。

要讓此技巧順利運作,您的資料透視表必須包含一個篩選欄位,而該篩選欄位的名稱對於正確設定 VBA 程式碼至關重要。

考慮以下範例:資料透視表包含一個名為 Category 的篩選欄位,其中提供兩個選項:「Expenses」與「Sales」。只要將儲存格連結至資料透視表篩選器,您只需在該儲存格中輸入「Expenses」或「Sales」,即可立即控制所顯示的資料!

將樞紐分析表篩選連結至特定儲存格

實作步驟如下:

  • 選取您要用作篩選控制器的儲存格(例如 H6),並預先輸入一個篩選值,確保該值與資料透視表篩選欄位中的可用項目完全一致。
  • 前往包含您資料透視表的工作表。在工作表標籤上按一下滑鼠右鍵,然後從功能表中選擇檢視程式碼,即可開啟 Visual Basic for Applications 視窗。

以滑鼠右鍵按一下工作表標籤,然後選取「檢視程式碼」

Microsoft Visual Basic for Applications 視窗中,將下列 VBA 程式碼貼上至程式碼窗格。

VBA 程式碼:將資料透視表篩選器連結至特定儲存格

Private Sub Worksheet_Change(ByVal Target As Range)
'Update by Extendoffice 20180702
    Dim xPTable As PivotTable
    Dim xPFile As PivotField
    Dim xStr As String
    On Error Resume Next
    If Intersect(Target, Range("H6")) Is Nothing Then Exit Sub
    Application.ScreenUpdating = False
    Set xPTable = Worksheets("Sheet1").PivotTables("PivotTable2")
    Set xPFile = xPTable.PivotFields("Category")
    xStr = Target.Text
    xPFile.ClearAllFilters
    xPFile.CurrentPage = xStr
    Application.ScreenUpdating = True
End Sub

注意事項:

1)Sheet 1 為工作表名稱,請依需求修改。
2)PivotTable 2 為資料透視表的名稱,請根據您的實際表格調整。
3)「Category」為要篩選的欄位,請確保拼字與您表格中的欄位名稱完全一致。
4)H6 為連結至篩選器的參照儲存格,您可視需要修改儲存格位址。請確保該儲存格始終包含資料集中存在的有效篩選值。

貼上程式碼後,按下 Alt + Q,即可關閉 VBA 編輯器視窗並返回 Excel。

現在,您的資料透視表篩選狀態由 H6 儲存格的內容控制。只要將 H6 儲存格的值更改為「Sales」或「Expenses」,資料透視表的顯示內容就會立即更新。若您遇到任何問題,請再次確認參照儲存格的值與資料透視表中的篩選項目完全相符,且程式碼中指定的名稱正確無誤。

重新整理儲存格後,系統會根據現有值篩選出對應的資料

每當您修改儲存格內容,資料透視表就會據此自動重新整理篩選後的資料。

變更儲存格值時,樞紐分析表中的篩選資料會自動更新。

提示與疑難排解:若儲存格中的篩選欄位值與可用項目未完全相符(包括大小寫與空格),程式碼可能無法如預期套用篩選。請務必確認 VBA 程式碼中的欄位名稱與表格名稱拼寫正確。若您希望將此設定套用至多個資料透視表,可進一步調整程式碼,或透過迴圈加以擴充。

kutools for excel ai 的螢幕截圖

透過 KUTOOLS AI 解鎖 Excel 的神奇功能

  • 智慧執行:透過簡易指令,輕鬆執行儲存格操作、分析資料,並建立圖表!
  • 自訂公式:打造專屬公式,讓您的工作流程更順暢!
  • VBA 編碼:輕鬆撰寫並套用 VBA 程式碼,立即提升工作效率!
  • 公式解析:輕鬆掌握複雜公式!
  • 文字翻譯:輕鬆打破試算表中的語言隔閡!
運用 AI 驅動的工具強化您的 Excel 能力。立即下載體驗前所未有的高效!

Excel 公式-結合使用公式(例如 GETPIVOTDATA)與切片器或報表篩選器參照

雖然 Excel 無法單靠原生公式直接將資料透視表篩選器綁定至儲存格,但您可結合 GETPIVOTDATA 等函數與切片器或報表篩選器,輕鬆打造動態報表並即時顯示對應數值!當您希望建立互動式儀表板,讓摘要數據能根據篩選條件或另一儲存格的輸入自動更新時,此方法尤為實用,大幅提升數據分析的靈活性與互動體驗。

適用情境包括動態報表面板、儀表板或比較摘要,當您希望顯示的結果能隨切片器的選擇而變動,或反映與儲存格內容相關的資料時尤為實用。此方法的主要優勢在於能高效呈現更新後的摘要資料。然而,僅靠儲存格公式本身,無法以程式方式設定資料透視表的實際篩選狀態。

範例:根據儲存格值顯示資料透視表摘要

假設您有一個按 Category(例如「Sales」、「Expenses」)彙總銷售額的資料透視表,即可使用 GETPIVOTDATA 輕鬆提取指定類別在儲存格中的相關數值!

1. 假設 H6 儲存格包含您要顯示的類別(例如「Sales」),請在摘要儲存格(例如 I6)中輸入下列公式:

=GETPIVOTDATA("Sum of Amount",$B$4,"Category",H6)

2. 在 I6 中輸入公式後,按下 Enter。現在,只要將 H6 變更為有效類別(如「Expenses」或「Sales」),I6 就會立即更新,顯示該類別在目前資料透視表中的總計。

注意事項:
  • 第一個引數「Sum of Amount」應替換為您資料透視表中「值」欄位的實際名稱(例如「Total Sales」或您用於數值的任何標籤)。同樣地,$B$4 應替換為資料透視表中任一特定儲存格的參照——Excel 會自動識別該參照,並正確關聯至 GETPIVOTDATA 函數所需的對應資料透視表。
  • 若要取得精確的 GETPIVOTDATA 語法,請點選資料透視表中的任一儲存格並參照其中的數值—Excel 將自動生成正確語法。請確保 H6 與表格中現有的某個類別相符,以獲得準確結果。

提示:此方法雖不會改變資料透視表本身的篩選狀態,卻能動態呈現如同經過儲存格篩選後的結果,並與目標儲存格的輸入即時連動。您還可運用此方法驅動圖表、摘要表格或儀表板。

疑難排解:若公式傳回 #REF!#VALUE!錯誤,請立即檢查儲存格參照是否正確、輸入的類別是否確實存在於您的資料透視表中,以及欄位與加總名稱是否完全相符。


其他 Excel 內建方法-連接資料透視表切片器與儀表板,實現互動式篩選

Excel 的切片器與報表篩選器工具提供直覺易用的內建功能,無需撰寫 VBA 程式碼,即可輕鬆打造互動式篩選體驗。善用這些功能,您能實現類似儀表板的效果,將多個資料透視表或顯示內容同步連結至一個或多個切片器,讓數據探索更流暢、更高效。

常見做法之一是插入一個切片器,並將其連結至資料透視表的欄位(例如「Category」)。使用者只需在切片器中點選所需項目,資料透視表就會立即同步更新!若您有多個基於相同來源區域的資料透視表,更可將單一切片器同時連結至所有表格,實現一鍵同步篩選,讓您的報表介面更加直覺、一致且專業。

建立並連結切片器的步驟如下:

  • 點選您的資料透視表,然後前往樞紐分析表分析(或)選項索引標籤,視 Excel 版本而定),即可點選插入切片器
  • 勾選所需欄位(例如 )Category),再點擊「確定」。切片器將立即出現在工作表上,讓使用者能直覺地進行視覺化篩選!
  • 若要將一個切片器連結至多個資料透視表,請在切片器上按一下滑鼠右鍵,選擇報表連線(或)樞紐分析表連線),並勾選您希望同步的所有資料透視表。
    在儀表板情境下,這種做法尤其強大——所有視覺化內容將同步回應使用者的篩選條件,打造流暢一致的互動體驗!

優點:對於大多數互動式篩選需求而言,操作直覺簡便,無需使用巨集或自訂程式碼,非常適合重視簡易性與可靠性的儀表板或共用報表。限制在於 Excel 並未原生支援將儲存格直接綁定至篩選器以實現自動化——若要直接透過儲存格值控制篩選器,仍需仰賴 VBA 或外部工具。

疑難排解:若切片器無法連結至多個資料透視表,請確認所有表格皆由相同的快取/來源區域建立而成。僅當表格相容時,報表連線選項才會顯示。

摘要建議:在選擇將資料透視表篩選器連結至儲存格值或建立互動式儀表板的最佳方法時,請務必考量所需的自動化程度、Excel 版本限制,以及您的環境是否支援 VBA/巨集。針對基本需求,切片器搭配公式(GETPIVOTDATA)即可快速實現穩健的結果;若追求更高階的自動化,則可透過 VBA 解決方案獲得更精細的控制力。為確保結果準確,請確認條件名稱與篩選項目完全一致。若發生錯誤,請檢查儲存格輸入值,並確保程式碼、公式及資料集中的所有名稱皆完全相符。


相關文章:

最佳 Office 生產力工具

🤖KUTOOLS AI 助手:基於以下內容徹底革新數據分析:智慧執行     產生程式碼  建立自訂公式    分析資料並產生圖表  呼叫增強函數……
熱門功能尋找、醒目提示或標記重複值     刪除空白行     合併列或儲存格而不遺失資料     不使用公式的四捨五入……
高級 LOOKUP多重條件 VLookup    多重數值 VLookup     跨多個工作表 VLookup      模糊查找……
高級下拉列表快速建立下拉式清單     相依式下拉式清單     多選下拉式清單……
欄位管理員新增指定數量的欄位移動欄位切換隱藏欄位的可見狀態比較範圍與欄位……
精選功能網格聚焦     設計視圖   增強編輯欄    工作簿與工作表管理員     資源庫(自動文字)  日期提取     合併工作表    加密/解密儲存格    依清單傳送電子郵件     超級篩選      特殊篩選(篩選粗體儲存格/斜體/刪除線……) ......
頂尖 15 工具組12 文字工具添加文本刪除特定字符,……)   50+ 圖表 類型甘特圖,……)   40+ 實用公式基於生日計算年齡,……)   19 插入工具插入二維碼從路徑插入圖片,……)   12 轉換工具金額轉大寫匯率轉換,……)   7 合併和拆分工具高級合併行分割儲存格,……)……以及更多
在您的慣用語言中使用 Kutools—支援英文、西班牙文、德文、法文、中文及另外 40+ 種語言!

運用 Kutools for Excel 強化您的 Excel 技能,體驗前所未有的高效能!Kutools for Excel 提供超過 300 項進階功能,大幅提升生產力並節省寶貴時間。立即點擊,取得您最需要的功能……


Office Tab 為 Office 帶來分頁式介面,讓您的工作更輕鬆自在!

  • 在 Word、Excel、PowerPoint 中啟用分頁式編輯與閱讀功能,以及 Access、Visio 與 Project。
  • 在同視窗的新分頁中開啟並建立多份文件,而非另開新視窗。
  • 每天為您提升 50% 的工作效率,並省下數百次滑鼠點擊!

所有 Kutools 增益集,一個安裝程式

Kutools for Office 套件整合了 Excel、Word、Outlook 與 PowerPoint 的增益集,以及 Office Tab Pro,非常適合需要跨多個 Office 應用程式協作的團隊使用!

ExcelWordOutlookTabsPowerPoint
  • 全能套件— 包含 Excel、Word、Outlook 與 PowerPoint 增益集,以及 Office Tab Pro
  • 一個安裝程式,一個授權— 數分鐘內即可完成設定(支援 MSI)
  • 協同運作更出色— 在多個 Office 應用程式間實現流暢的生產力體驗
  • 30 天完整功能試用— 無需註冊,無需信用卡
  • 超值之選— 比單獨購買各增益集更省費用