Note: The other languages of the website are Google-translated. Back to English

如何更改數據透視表中的多個字段設置?

在工作表中創建數據透視表時,將字段拖到 價值觀 列出 數據透視表字段列表,您可能會得到相同的結果 計數 功能如下圖所示。 但是現在,您想要 總和 功能取代 計數 的功能,如何在Excel中一次更改多個數據透視表字段的計算?

文檔更改字段設置 1

手動一一更改樞紐分析表中的欄位設定

使用VBA代碼更改數據透視表中的多個字段設置

Office選項卡在Office中啟用選項卡式編輯和瀏覽,並使您的工作更加輕鬆...
Kutools for Excel 解決了你的大部分問題,並將你的生產力提高了 80%
  • 重用任何東西: 將最常用或最複雜的公式,圖表等添加到您的收藏夾中,並在將來快速重用它們。
  • 超過20種文字功能: 從文本字符串中提取數字; 提取或刪除部分文字; 將數字和貨幣轉換為英文單詞。
  • 合併工具:將多個工作簿和工作表合二為一; 合併多個單元格/行/列,而不會丟失數據; 合併重複的行和總和。
  • 分割工具:根據價值將數據分割成多個工作表; 一本工作簿可轉換為多個Excel,PDF或CSV文件; 一列到多列。
  • 跳過粘貼 隱藏/過濾的行; 計數與求和 按背景色; 向多個收件人批量發送個性化電子郵件。
  • 超級過濾器: 創建高級過濾方案並應用於任何工作表; 分類 按星期,日期,頻率等 篩選 用粗體,公式,註釋...
  • 超過300個強大的功能; 適用於 Office 2007-2021 和 365; 支持所有語言; 在您的企業或組織中輕鬆部署。

箭頭藍色右氣泡 手動一一更改樞紐分析表中的欄位設定

在Excel中,您可以通過在功能表中一一更改功能來更改字段設置的計算。 值字段設置 對話框,請按以下步驟操作:

1。 在“值”區域中選擇要為其更改數據透視表中的匯總功能的字段,然後單擊鼠標右鍵以選擇 值字段設置,請參見屏幕截圖:

文檔更改字段設置 1

2。 然後在 值字段設置 對話框中,選擇要使用的一種計算類型 總結價值 標籤,請參見屏幕截圖:

文檔更改字段設置 1

3。 然後點擊 OK 關閉此對話框,您可以看到您的Count函數已更改為Sum函數,請參見屏幕截圖:

文檔更改字段設置 1

4。 重複上述步驟,一個接一個地更改其他字段的計算設置。

備註: 您還可以通過右鍵單擊一個字段單元格並選擇來更改字段設置 匯總值 並從上下文菜單中選擇您需要的一種計算。

文檔更改字段設置 1


箭頭藍色右氣泡 使用VBA代碼更改數據透視表中的多個字段設置

如果需要更改許多字段計算,上述方法將既費時又繁瑣,在這裡,我可以向您介紹一個代碼,以同時更改多個字段設置。

1。 單擊數據透視表中的任何單元格。

2。 按住 ALT + F11 鍵,然後打開 Microsoft Visual Basic for Applications窗口.

3。 點擊 插入 > 模塊,然後將以下代碼粘貼到 模塊窗口.

VBA代碼:更改數據透視表中的多個字段設置

Public Sub SetDataFieldsToSum()
'Update 20141127
Dim xPF As PivotField
Dim WorkRng As Range
Set WorkRng = Application.Selection
With WorkRng.PivotTable
   .ManualUpdate = True
   For Each xPF In .DataFields
      With xPF
         .Function = xlSum
         .NumberFormat = "#,##0"
      End With
   Next
   .ManualUpdate = False
End With
End Sub

4。 然後按 F5 鍵執行此代碼,並且所選數據透視表中的所有字段設置都已立即轉換為您的需要計算,請參見屏幕截圖:

文檔更改字段設置 1
-1
文檔更改字段設置 6

備註:在上面的代碼中,您可以根據需要將Sum函數更改為任何其他計算,例如Average,Max,Min。 您只需要在以下腳本中更改總和: 公共子SetDataFieldsToSum() 函數= xlSum 其他功能。


最佳辦公效率工具

Kutools for Excel 解決了你的大部分問題,並將你的生產力提高了 80%

  • 重用: 快速插入 複雜的公式,圖表 以及您以前使用過的任何東西; 加密單元 帶密碼 創建郵件列表 並發送電子郵件...
  • 超級公式欄 (輕鬆編輯多行文本和公式); 閱讀版式 (輕鬆讀取和編輯大量單元格); 粘貼到過濾範圍...
  • 合併單元格/行/列 不會丟失數據; 拆分單元格內容; 合併重複的行/列...防止細胞重複; 比較範圍...
  • 選擇重複或唯一 行; 選擇空白行 (所有單元格都是空的); 超級查找和模糊查找 在許多工作簿中; 隨機選擇...
  • 確切的副本 多個單元格,無需更改公式參考; 自動創建參考 到多張紙; 插入項目符號,複選框等...
  • 提取文字,添加文本,按位置刪除, 刪除空間; 創建和打印分頁小計; 在單元格內容和註釋之間轉換...
  • 超級濾鏡 (將過濾方案保存並應用於其他工作表); 高級排序 按月/週/日,頻率及更多; 特殊過濾器 用粗體,斜體...
  • 結合工作簿和工作表; 根據關鍵列合併表; 將數據分割成多個工作表; 批量轉換xls,xlsx和PDF...
  • 超過 300 項強大的功能. 支持 Office / Excel 2007-2021 和 365。支持所有語言。 在您的企業或組織中輕鬆部署。 完整功能 30 天免費試用。 60 天退款保證。
kte選項卡201905

Office選項卡為Office帶來了選項卡式界面,使您的工作更加輕鬆

  • 在Word,Excel,PowerPoint中啟用選項卡式編輯和閱讀,發布者,Access,Visio和Project。
  • 在同一窗口的新選項卡中而不是在新窗口中打開並創建多個文檔。
  • 將您的工作效率提高 50%,每天為您減少數百次鼠標點擊!
officetab底部
按評論排序
留言 (28)
還沒有評分。 成為第一位評論!
網站主持人對此評論進行了最小化
嗨,提示和 VB 宏真的很有幫助。 謝謝
網站主持人對此評論進行了最小化
美好的一天,美好的。 它真的很有幫助。 你的 Pivot 技巧太棒了,我多年來一直在尋找,我得到了真正的幫助我們如何也可以為小數添加函數。 非常感謝
網站主持人對此評論進行了最小化
謝謝你的解決方案。 出於某種原因,我在 .NumberFormat = "#,##0" 上遇到錯誤。 我正在從 Sum 更改為 Average 效果很好,但我也想將 NumberFormat 更改為帶有 1 個小數的 Number。 謝謝
網站主持人對此評論進行了最小化
您好,感謝您提供非常好的解決方案! 有沒有可能讓它自動化? 因此,每當我向該宏應運行的值添加新字段時。 提前謝謝你,賈尼
網站主持人對此評論進行了最小化
這太有用了。 這個問題困擾了我多年,現在解決了。
網站主持人對此評論進行了最小化
謝謝你! 有什麼方法可以使用 StdDev 而不是 Sum? 我能夠更改您的平均和計數代碼,但我無法讓 StdDev 工作。 謝謝!
網站主持人對此評論進行了最小化
嗨,凱爾西——我想知道你是否收到過這個問題的答案? 我正在嘗試做同樣的事情。 謝謝!
網站主持人對此評論進行了最小化
凱爾西——你有沒有得到這個答案或弄清楚這個? 我試圖編輯代碼,但還沒有弄清楚。 我不確定是否有辦法針對不同的求和選項快速更改它。 謝謝!
網站主持人對此評論進行了最小化
Kelsey,我剛剛創建了一個宏並手動更改了一個,然後檢查了 VBA 中的宏代碼。 要讓 StdDev 工作,請使用 StDev。 代碼變成如下:


公共子集DataFieldsToStDev()
'更新 20141127
將 xPF 調暗為 PivotField
將 WorkRng 調暗為範圍
設置 WorkRng = Application.Selection
使用 WorkRng.PivotTable
.ManualUpdate = 真
對於 .DataFields 中的每個 xPF
帶 xPF
.Function = xlStDev
.NumberFormat = "#,##0"
結束
下一頁
.ManualUpdate = 假
結束
END SUB
網站主持人對此評論進行了最小化
嗨,這非常有用,謝謝。 我只是想知道是否可以只設置幾個或特定列的值字段設置? 我的意思是,例如,我在前 20 列中有值,我想查看 SUM 中的數據,但是從第 21 列來的是另一種類型的數據(例如分佈),我想從該列中查看 MAX 值中的數據。 那麼是否有可能以某種方式找到例如標題的名稱,如果存在“分佈”,則將每個“分佈”列更改為 MAX 值。 是否有意義? 歡呼佐爾坦
網站主持人對此評論進行了最小化
你有沒有得到回复? 我也有同樣的問題
網站主持人對此評論進行了最小化
正是我想要的! 在 .NumberFormat 行之後,我為數據透視表中的列標題添加了一個重命名,所以我沒有在所有這些中添加“Sum of”。 .Caption = " " & xPF.SourceName 再次感謝!!
網站主持人對此評論進行了最小化
使用 VBA 代碼更改數據透視表中的多個字段設置


驚人的! 非常感謝。 對我的工作很有幫助。
網站主持人對此評論進行了最小化
這難以置信。 多年來,我一直對這個問題感到沮喪,有些文檔有 50 多個字段。 這是這樣一個節省時間!
網站主持人對此評論進行了最小化
太棒了——我不是 VBA 的熱門人物,感覺自己像個冠軍——這讓我發瘋了很長時間! 謝謝
網站主持人對此評論進行了最小化
SuperB ...我對這個問題感到沮喪
網站主持人對此評論進行了最小化
傑出的!!!! 非常感謝,這太棒了!!!
網站主持人對此評論進行了最小化
依次為每個字段的平均值、標準差、最大值和最小值如何?
網站主持人對此評論進行了最小化
我過去使用 VBA 解決方案取得了巨大成功,但它不適用於數據模型。 你知道是否有解決方案嗎?
網站主持人對此評論進行了最小化
謝謝你。 該代碼運行良好,為我節省了大量浪費的時間和精力!
網站主持人對此評論進行了最小化
非常感謝您提供 VBA 代碼,我喜歡它!
網站主持人對此評論進行了最小化
非常感謝!!! 這太有幫助了,太棒了! 為我節省了很多時間
網站主持人對此評論進行了最小化
我收到此錯誤“無法獲取 Range 類的數據透視表屬性”。 你知道我該如何解決這個問題嗎?
網站主持人對此評論進行了最小化
我收到錯誤“無法獲取範圍類的數據透視表屬性”。 你知道鋤頭我能解決這個問題嗎?
網站主持人對此評論進行了最小化
非常感謝,這個 VBA 代碼效果很好。 
這裡還沒有評論
載入更多
留下你的意見
以訪客身份發帖
×
評價此帖子:
0   字符
推薦地點

關注我們

版權所有©2009 - 萬維網。extendoffice.com。 | 版權所有。 供電 ExtendOffice。 |
Microsoft和Office徽標是Microsoft Corporation在美國和/或其他國家的商標或註冊商標。
受Sectigo SSL保護