Excel 教學:GETPIVOTDATA 函數
1. GETPIVOTDATA 函數的用途
GETPIVOTDATA 函數用來從樞紐分析表(Pivot Table)擷取指定的彙總數據,即使樞紐分析表的結構變動,數據仍可正確擷取,避免傳統的單純儲存格參照 (=B5) 可能失效的問題。
2. GETPIVOTDATA 函數的語法
GETPIVOTDATA(data_field, pivot_table, [field1, item1, field2, item2, ...])
| 參數 | 說明 |
|---|---|
data_field | 必填,要擷取的數據欄位名稱(用雙引號 "" 包住)。 |
pivot_table | 必填,樞紐分析表中任一個儲存格的參照(通常是表格左上角)。 |
[field1, item1] | 選填,指定要篩選的欄位名稱及對應的項目。 |
3. GETPIVOTDATA 函數範例
✅ 範例 1:擷取總計數據
假設有一個樞紐分析表,包含銷售金額(Sales),在 A3:D10 範圍內,且 B4 是總計金額。
=GETPIVOTDATA("Sales", A3)
? 結果:回傳總銷售金額。
✅ 範例 2:擷取特定分類數據
假設樞紐分析表包含產品類別(Category)和銷售金額(Sales),我們要擷取 "Electronics" 的銷售金額:
=GETPIVOTDATA("Sales", A3, "Category", "Electronics")
? 結果:回傳 Electronics 的銷售總額。
✅ 範例 3:擷取特定產品與地區數據
假設有 Category(產品類別)、Region(地區) 和 Sales(銷售額):
=GETPIVOTDATA("Sales", A3, "Category", "Furniture", "Region", "North")
? 結果:回傳 Furniture 在 North 區的銷售金額。
✅ 範例 4:使用儲存格參照(避免手動輸入條件)
=GETPIVOTDATA("Sales", A3, "Category", A1, "Region", B1)
? A1 的值是 "Furniture",B1 的值是 "North",結果與上例相同。
✅ 範例 5:自動擷取數據(搭配下拉選單)
若 A1 設為產品類別的下拉選單,則:
=GETPIVOTDATA("Sales", A3, "Category", A1)
? 當 A1 變更時,公式會自動顯示該類別的銷售金額。
4. GETPIVOTDATA 函數的應用
- 避免直接參照儲存格失效(因為樞紐表可能變動)。
- 動態報表(搭配下拉選單或
INDEX/MATCH讓數據可自動變更)。 - 擷取不同篩選條件的數據(如產品 + 地區的銷售總額)。
- 與
SUMIF或IFERROR搭配,避免#REF!錯誤。
5. GETPIVOTDATA 的設定
如果你不希望 Excel 自動產生 GETPIVOTDATA,可以關閉該功能:
- 點擊
樞紐分析表。 - 在功能區中 選擇
分析(Excel 2016 以後)。 - 點擊
樞紐分析表選項> 取消勾選使用 GETPIVOTDATA 產生公式。
6. 總結
GETPIVOTDATA可安全擷取樞紐分析表中的數據,避免結構變動影響。- 需要數據名稱(欄位名稱)和樞紐分析表範圍來擷取數據。
- 可搭配
IFERROR、INDEX/MATCH或下拉選單來建立動態報表。